Update to sagemath 8.4.

Also:
- Build for python 3 instead of python 2 due to upcoming python 2 removal.
- Add -python3 and -escape patches to fix problems with python 3.
- Drop -nofstring patch, only needed for python 2.
- Drop upstreamed -eclib patch.
- Switch from atlas to openblas and rename -atlas patch to -openblas.
- Add -buildroot patch and only build cython interfaces once.
This commit is contained in:
Jerry James 2018-11-01 19:25:26 -06:00
parent 1a0bd1afc6
commit eaa777c690
19 changed files with 1557 additions and 473 deletions

108
sagemath-escape.patch Normal file
View file

@ -0,0 +1,108 @@
--- build/pkgs/sagenb/src/sagenb/misc/sphinxify.py.orig 2018-10-25 14:14:33.031253545 -0600
+++ build/pkgs/sagenb/src/sagenb/misc/sphinxify.py 2018-10-25 15:33:56.358876835 -0600
@@ -133,7 +133,7 @@ def sphinxify(docstring, format='html'):
# "/media/...path.../blah.png"
# to
# "/doc/static/reference/media/...path.../blah.png"
- output = re.sub("""src=['"](/?\.\.)*/?media/([^"']*)['"]""",
+ output = re.sub("""src=['"](/?\\.\\.)*/?media/([^"']*)['"]""",
'src="/doc/static/reference/media/\\2"',
output)
# Remove spurious \(, \), \[, \].
--- build/pkgs/sagenb/src/sagenb/misc/support.py.orig 2018-10-25 13:30:02.499892169 -0600
+++ build/pkgs/sagenb/src/sagenb/misc/support.py 2018-10-25 14:14:33.032253542 -0600
@@ -550,7 +550,7 @@ try:
return args[0].__getattribute__(str(self))(*args[1:], **kwds)
def automatic_name_eval(s, globals, max_names=10000):
- """
+ r"""
Exec the string ``s`` in the scope of the ``globals``
dictionary, and if any :exc:`NameError`\ s are raised, try to
fix them by defining the variable that caused the error to be
--- build/pkgs/sagenb/src/sagenb/notebook/cell.py.orig 2018-10-25 13:30:55.707737342 -0600
+++ build/pkgs/sagenb/src/sagenb/notebook/cell.py 2018-10-25 14:14:33.032253542 -0600
@@ -441,7 +441,7 @@ class Cell_generic(object):
return isinstance(self, Cell)
def is_auto_cell(self):
- """
+ r"""
Returns whether this is an automatically evaluated generic
cell. This is always false for :class:`Cell_generic`\ s and
:class:`TextCell`\ s.
@@ -647,7 +647,7 @@ class TextCell(Cell_generic):
return self._text
def set_cell_output_type(self, typ='wrap'):
- """
+ r"""
Sets this text cell's output type. This does nothing for
:class:`TextCell`\ s.
@@ -1320,8 +1320,8 @@ class Cell(Cell_generic):
if len(s) == 0:
return False
s = s[0]
- return bool(re.search('(?<!\w)interact\s*\(.*\).*', s) or
- re.search('\s*@\s*interact', s))
+ return bool(re.search(r'(?<!\w)interact\s*\(.*\).*', s) or
+ re.search(r'\s*@\s*interact', s))
def is_interacting(self):
r"""
@@ -1344,7 +1344,7 @@ class Cell(Cell_generic):
return hasattr(self, 'interact')
def stop_interacting(self):
- """
+ r"""
Stops :func:`sagenb.notebook.interact.interact`\ ion for this
compute cell.
--- build/pkgs/sagenb/src/sagenb/notebook/worksheet.py.orig 2018-05-22 10:01:48.000000000 -0600
+++ build/pkgs/sagenb/src/sagenb/notebook/worksheet.py 2018-10-17 14:41:08.634154908 -0600
@@ -61,8 +61,8 @@ from flask_babel import gettext, lazy_ge
_ = gettext
# Set some constants that will be used for regular expressions below.
-whitespace = re.compile('\s') # Match any whitespace character
-non_whitespace = re.compile('\S')
+whitespace = re.compile(r'\s') # Match any whitespace character
+non_whitespace = re.compile(r'\S')
# The file to which the Sage code that will be evaluated is written.
CODE_PY = "___code___.py"
--- src/sage/combinat/cluster_algebra_quiver/quiver_mutation_type.py.orig 2018-10-17 17:13:35.000000000 -0600
+++ src/sage/combinat/cluster_algebra_quiver/quiver_mutation_type.py 2018-10-25 14:14:33.033253539 -0600
@@ -2023,7 +2023,7 @@ class QuiverMutationType_Reducible(Quive
@cached_method
def class_size(self):
- """
+ r"""
If it is known, the size of the mutation class of all quivers
which are mutation equivalent to the standard quiver of
``self`` (up to isomorphism) is returned.
--- src/sage/combinat/crystals/alcove_path.py.orig 2018-10-17 17:13:35.000000000 -0600
+++ src/sage/combinat/crystals/alcove_path.py 2018-10-25 15:37:04.294360718 -0600
@@ -389,7 +389,7 @@ class CrystalOfAlcovePaths(UniqueReprese
One can compute all vertices of the crystal by finding all the
admissible subsets of the `\lambda`-chain (see method
- is_admissible, for definition). We use the breath first
+ is_admissible, for definition). We use the breadth first
search algorithm.
.. WARNING::
--- src/sage/homology/homology_group.py.orig 2018-10-17 17:13:47.000000000 -0600
+++ src/sage/homology/homology_group.py 2018-10-25 15:54:54.683421705 -0600
@@ -109,7 +109,7 @@ class HomologyGroup_class(AdditiveAbelia
sage: from sage.homology.homology_group import HomologyGroup
sage: H = HomologyGroup(7, ZZ, [4,4,4,4,4,7,7])
sage: H._latex_()
- 'C_{4}^{5} \\times C_{7} \\times C_{7}'
+ 'C_{4}^{5} \times C_{7} \times C_{7}'
sage: latex(HomologyGroup(6, ZZ))
\ZZ^{6}
"""