Update to sagemath 8.7.

- Drop upstreamed -giac patch.
- Add -sagetex patch to fix a python indentation error.
- Add -rubiks patch to fix compilation of the rubiks library.
- Add -random patch to fix a non-random random bit generator.
- Drop pip3 workaround; the binary is now named just pip again.
This commit is contained in:
Jerry James 2019-04-28 15:12:00 -06:00
parent b6408b9313
commit 05337076b6
21 changed files with 898 additions and 442 deletions

View file

@ -1,27 +1,18 @@
diff -up build/pkgs/sagenb/src/sagenb/misc/sphinxify.py.orig build/pkgs/sagenb/src/sagenb/misc/sphinxify.py
--- build/pkgs/sagenb/src/sagenb/misc/sphinxify.py.orig 2018-11-05 08:45:39.000000000 -0700
+++ build/pkgs/sagenb/src/sagenb/misc/sphinxify.py 2019-01-04 10:34:03.550082474 -0700
@@ -480,7 +480,7 @@ skip_picklability_check_modules = [
#'sage.misc.nested_class_test', # for test only
'sage.misc.latex',
'sage.misc.explain_pickle',
- '__builtin__',
+ 'builtins',
]
def check_nested_class_picklability(app, what, name, obj, skip, options):
@@ -531,7 +531,7 @@ def skip_member(app, what, name, obj, sk
if 'SAGE_CHECK_NESTED' in os.environ:
check_nested_class_picklability(app, what, name, obj, skip, options)
- if getattr(obj, '__module__', None) == '__builtin__':
+ if getattr(obj, '__module__', None) == 'builtins':
return True
if (hasattr(obj, '__name__') and obj.__name__.find('.') != -1 and
diff -up build/pkgs/sagenb/src/sagenb/misc/support.py.orig build/pkgs/sagenb/src/sagenb/misc/support.py
--- build/pkgs/sagenb/src/sagenb/misc/support.py.orig 2019-02-01 06:34:20.000000000 -0700
+++ build/pkgs/sagenb/src/sagenb/misc/support.py 2019-04-08 12:02:29.162692936 -0600
@@ -178,7 +178,7 @@ def completions(s, globs, format=False,
try:
if not '.' in s and not '(' in s:
v = [x for x in globs.keys() if x[:n] == s] + \
- [x for x in __builtins__.keys() if x[:n] == s]
+ [x for x in builtins.keys() if x[:n] == s]
else:
if not ')' in s:
i = s.rfind('.')
diff -up build/pkgs/sagenb/src/sagenb/notebook/docHTMLProcessor.py.orig build/pkgs/sagenb/src/sagenb/notebook/docHTMLProcessor.py
--- build/pkgs/sagenb/src/sagenb/notebook/docHTMLProcessor.py.orig 2018-11-05 08:45:39.000000000 -0700
+++ build/pkgs/sagenb/src/sagenb/notebook/docHTMLProcessor.py 2019-01-04 10:39:26.659076379 -0700
--- build/pkgs/sagenb/src/sagenb/notebook/docHTMLProcessor.py.orig 2019-02-01 05:37:36.000000000 -0700
+++ build/pkgs/sagenb/src/sagenb/notebook/docHTMLProcessor.py 2019-04-08 11:59:49.259545960 -0600
@@ -25,7 +25,7 @@ This module contains three classes:
.. NOTE::
@ -41,8 +32,8 @@ diff -up build/pkgs/sagenb/src/sagenb/notebook/docHTMLProcessor.py.orig build/pk
# HTMLParser, and may never actually be visibly called here.
diff -up build/pkgs/sagenb/src/sagenb/notebook/wiki2html.py.orig build/pkgs/sagenb/src/sagenb/notebook/wiki2html.py
--- build/pkgs/sagenb/src/sagenb/notebook/wiki2html.py.orig 2018-11-05 08:45:39.000000000 -0700
+++ build/pkgs/sagenb/src/sagenb/notebook/wiki2html.py 2019-01-05 10:36:28.072250833 -0700
--- build/pkgs/sagenb/src/sagenb/notebook/wiki2html.py.orig 2019-02-01 05:37:36.000000000 -0700
+++ build/pkgs/sagenb/src/sagenb/notebook/wiki2html.py 2019-04-08 11:59:49.260545943 -0600
@@ -59,7 +59,7 @@ class Parser:
'parent': r'(?:%s)?' % re.escape(PARENT_PREFIX),
}
@ -53,36 +44,32 @@ diff -up build/pkgs/sagenb/src/sagenb/notebook/wiki2html.py.orig build/pkgs/sage
'punct': punct_pattern,
}
diff -up build/pkgs/sagetex/src/extractsagecode.py.orig build/pkgs/sagetex/src/extractsagecode.py
--- build/pkgs/sagetex/src/extractsagecode.py.orig 2015-08-26 17:28:42.000000000 -0600
+++ build/pkgs/sagetex/src/extractsagecode.py 2019-01-04 10:40:25.729978335 -0700
@@ -45,8 +45,8 @@ See the SageTeX documentation for more d
--- build/pkgs/sagetex/src/extractsagecode.py.orig 2019-04-08 11:59:49.261545925 -0600
+++ build/pkgs/sagetex/src/extractsagecode.py 2019-04-08 12:04:16.915757233 -0600
@@ -45,7 +45,7 @@ See the SageTeX documentation for more d
try:
opts, args = getopt.getopt(sys.argv[1:], 'ho', ['help', 'overwrite'])
-except getopt.GetoptError, err:
- print str(err)
+except getopt.GetoptError as err:
+ print(str(err))
print(str(err))
usage()
sys.exit(2)
diff -up build/pkgs/sagetex/src/makestatic.py.orig build/pkgs/sagetex/src/makestatic.py
--- build/pkgs/sagetex/src/makestatic.py.orig 2015-08-26 17:28:42.000000000 -0600
+++ build/pkgs/sagetex/src/makestatic.py 2019-01-04 10:40:50.967509206 -0700
@@ -45,8 +45,8 @@ See the SageTeX documentation for more d
--- build/pkgs/sagetex/src/makestatic.py.orig 2019-04-08 11:59:49.262545907 -0600
+++ build/pkgs/sagetex/src/makestatic.py 2019-04-08 12:04:42.619295492 -0600
@@ -45,7 +45,7 @@ See the SageTeX documentation for more d
try:
opts, args = getopt.getopt(sys.argv[1:], 'ho', ['help', 'overwrite'])
-except getopt.GetoptError, err:
- print str(err)
+except getopt.GetoptError as err:
+ print(str(err))
print(str(err))
usage()
sys.exit(2)
diff -up build/pkgs/sagetex/src/remote-sagetex.py.orig build/pkgs/sagetex/src/remote-sagetex.py
--- build/pkgs/sagetex/src/remote-sagetex.py.orig 2015-08-26 17:28:42.000000000 -0600
+++ build/pkgs/sagetex/src/remote-sagetex.py 2019-01-04 10:43:03.728041391 -0700
--- build/pkgs/sagetex/src/remote-sagetex.py.orig 2019-01-09 09:51:28.000000000 -0700
+++ build/pkgs/sagetex/src/remote-sagetex.py 2019-04-08 11:59:49.263545889 -0600
@@ -24,12 +24,11 @@
## You should have received a copy of the GNU General Public License along
## with this program. If not, see <http://www.gnu.org/licenses/>.
@ -145,119 +132,10 @@ diff -up build/pkgs/sagetex/src/remote-sagetex.py.orig build/pkgs/sagetex/src/re
if not password:
from getpass import getpass
diff -up build/pkgs/sagetex/src/run-sagetex-if-necessary.py.orig build/pkgs/sagetex/src/run-sagetex-if-necessary.py
--- build/pkgs/sagetex/src/run-sagetex-if-necessary.py.orig 2015-08-26 17:28:42.000000000 -0600
+++ build/pkgs/sagetex/src/run-sagetex-if-necessary.py 2019-01-04 10:44:12.087770682 -0700
@@ -58,7 +58,7 @@ with open(src + '.tex') as texf:
break
if not uses_sagetex:
- print src + ".tex doesn't seem to use SageTeX, exiting."
+ print(src + ".tex doesn't seem to use SageTeX, exiting.")
sys.exit(0)
# if something goes wrong, assume we need to run Sage
@@ -72,7 +72,7 @@ try:
if not re.search(ignore, line):
h.update(line)
except IOError:
- print '{0}.sagetex.sage not found, I think you need to typeset {0}.tex first.'.format(src)
+ print('{0}.sagetex.sage not found, I think you need to typeset {0}.tex first.'.format(src))
sys.exit(1)
try:
@@ -80,8 +80,8 @@ try:
for line in outf:
m = re.match('%([0-9a-f]+)% md5sum', line)
if m:
- print 'computed md5:', h.hexdigest()
- print 'sagetex.sout md5:', m.group(1)
+ print('computed md5:', h.hexdigest())
+ print('sagetex.sout md5:', m.group(1))
if h.hexdigest() == m.group(1):
run_sage = False
break
@@ -89,7 +89,7 @@ except IOError:
pass
if run_sage:
- print 'Need to run Sage on {0}.'.format(src)
+ print('Need to run Sage on {0}.'.format(src))
sys.exit(subprocess.call([path_to_sage, src + '.sagetex.sage']))
else:
- print 'Not necessary to run Sage on {0}.'.format(src)
+ print('Not necessary to run Sage on {0}.'.format(src))
diff -up build/pkgs/sagetex/src/sagetexparse.py.orig build/pkgs/sagetex/src/sagetexparse.py
--- build/pkgs/sagetex/src/sagetexparse.py.orig 2015-08-26 17:28:42.000000000 -0600
+++ build/pkgs/sagetex/src/sagetexparse.py 2019-01-04 10:44:35.398337372 -0700
@@ -52,7 +52,7 @@ class SoutParser():
try:
OneOrMore(parselabel).parseFile(fn)
except IOError:
- print 'Error accessing %s; exiting. Does your .sout file exist?' % fn
+ print('Error accessing %s; exiting. Does your .sout file exist?' % fn)
sys.exit(1)
def newlabel(self, s, l, t):
self.label.append(t.result[1:-1])
diff -up build/pkgs/sagetex/src/sagetex.py.orig build/pkgs/sagetex/src/sagetex.py
--- build/pkgs/sagetex/src/sagetex.py.orig 2015-08-26 17:28:42.000000000 -0600
+++ build/pkgs/sagetex/src/sagetex.py 2019-01-04 10:46:09.685584716 -0700
@@ -73,10 +73,10 @@ from your current version of Sage; see
http://www.sagemath.org/doc/installation/sagetex.html.""".format(jobname,
version, pyversion)
if version_check:
- raise VersionError, errstr
+ raise VersionError(errstr)
else:
- print '**** WARNING! Skipping version check for .sty and .py files, and'
- print errstr
+ print('**** WARNING! Skipping version check for .sty and .py files, and')
+ print(errstr)
if ' ' in jobname:
jobname = jobname.strip('"')
self.progress('Processing Sage code for {0}.tex...'.format(jobname))
@@ -116,7 +116,7 @@ http://www.sagemath.org/doc/installation
elif labelname == 'sagecmdline':
pass # output message already printed
else:
- raise ValueError, 'inline() got a bad labelname "{0}"'.format(labelname)
+ raise ValueError('inline() got a bad labelname "{0}"'.format(labelname))
self.souttmp.write(r'\newlabel{@' + labelname + str(counter) +
'}{{%\n' + s.rstrip() + '}{}{}{}{}}\n')
def savecmd(self, s):
@@ -178,7 +178,7 @@ http://www.sagemath.org/doc/installation
latex(result),
r' \end{displaymath}']
except SyntaxError:
- exec preparse(splitup[i][2]) in globals, locals
+ exec(preparse(splitup[i][2]), globals, locals)
self.inline(counter, '\n'.join(tex_strs))
def commandline(self, counter, s, globals, locals, text_output):
self.progress('Sage commandline {0} (line {1})'.format(counter, self.current_tex_line))
@@ -208,7 +208,7 @@ http://www.sagemath.org/doc/installation
latex(result) +
r'\end{displaymath}')
except SyntaxError:
- exec preparse(splitup[i][2]) in globals, locals
+ exec(preparse(splitup[i][2]), globals, locals)
if 'displaymath' not in tex_strs[-1]:
tex_strs.append(skip)
self.inline(counter, '\n'.join(tex_strs), labelname='sagecmdline')
@@ -233,8 +233,8 @@ http://www.sagemath.org/doc/installation
except ValueError as inst:
if re.match('filetype .*not supported by save', str(inst)):
newfilename = plotfilename[:-3] + 'png'
- print ' saving {0} failed; saving to {1} instead.'.format(
- plotfilename, newfilename)
+ print(' saving {0} failed; saving to {1} instead.'.format(
+ plotfilename, newfilename))
_p_.save(filename=newfilename, **kwargs)
break
else:
diff -up src/doc/common/conf.py.orig src/doc/common/conf.py
--- src/doc/common/conf.py.orig 2018-12-22 16:37:06.000000000 -0700
+++ src/doc/common/conf.py 2019-01-04 10:46:46.293895744 -0700
@@ -490,7 +490,7 @@ skip_picklability_check_modules = [
--- src/doc/common/conf.py.orig 2019-03-23 16:20:31.000000000 -0600
+++ src/doc/common/conf.py 2019-04-08 12:05:07.088855913 -0600
@@ -547,7 +547,7 @@ skip_picklability_check_modules = [
#'sage.misc.nested_class_test', # for test only
'sage.misc.latex',
'sage.misc.explain_pickle',
@ -266,7 +144,7 @@ diff -up src/doc/common/conf.py.orig src/doc/common/conf.py
]
def check_nested_class_picklability(app, what, name, obj, skip, options):
@@ -539,7 +539,7 @@ def skip_member(app, what, name, obj, sk
@@ -596,7 +596,7 @@ def skip_member(app, what, name, obj, sk
if 'SAGE_CHECK_NESTED' in os.environ:
check_nested_class_picklability(app, what, name, obj, skip, options)
@ -276,18 +154,18 @@ diff -up src/doc/common/conf.py.orig src/doc/common/conf.py
objname = getattr(obj, "__name__", None)
diff -up src/sage/combinat/finite_state_machine.py.orig src/sage/combinat/finite_state_machine.py
--- src/sage/combinat/finite_state_machine.py.orig 2018-12-22 16:37:07.000000000 -0700
+++ src/sage/combinat/finite_state_machine.py 2019-01-04 10:49:30.519802159 -0700
@@ -934,7 +934,7 @@ import six
--- src/sage/combinat/finite_state_machine.py.orig 2019-03-23 16:20:38.000000000 -0600
+++ src/sage/combinat/finite_state_machine.py 2019-04-08 12:05:07.090855877 -0600
@@ -932,7 +932,7 @@ import six
from six.moves import range, zip_longest, zip
from six import itervalues
-import collections
+import collections.abc
import itertools
from copy import copy, deepcopy
from sage.calculus.var import var
@@ -14253,7 +14253,7 @@ def is_FSMProcessIterator(PI):
@@ -14201,7 +14201,7 @@ def is_FSMProcessIterator(PI):
class FSMProcessIterator(SageObject,
@ -297,8 +175,8 @@ diff -up src/sage/combinat/finite_state_machine.py.orig src/sage/combinat/finite
This class takes an input, feeds it into a finite state machine
(automaton or transducer, in particular), tests whether this was
diff -up src/sage/cpython/dict_del_by_value.pyx.orig src/sage/cpython/dict_del_by_value.pyx
--- src/sage/cpython/dict_del_by_value.pyx.orig 2018-12-22 16:37:08.000000000 -0700
+++ src/sage/cpython/dict_del_by_value.pyx 2019-01-04 10:50:27.178734667 -0700
--- src/sage/cpython/dict_del_by_value.pyx.orig 2019-03-23 16:20:40.000000000 -0600
+++ src/sage/cpython/dict_del_by_value.pyx 2019-04-08 12:05:07.091855859 -0600
@@ -347,8 +347,8 @@ ELIF PY_VERSION_HEX>=0x03060000:
cdef MyPyDictKeysObject * keys = <MyPyDictKeysObject *>(mp.ma_keys)
cdef size_t perturb
@ -311,9 +189,9 @@ diff -up src/sage/cpython/dict_del_by_value.pyx.orig src/sage/cpython/dict_del_b
if mp.ma_values != NULL:
print ("del_dictitem_by_exact_value cannot be applied to a shared key dict")
diff -up src/sage/geometry/triangulation/point_configuration.py.orig src/sage/geometry/triangulation/point_configuration.py
--- src/sage/geometry/triangulation/point_configuration.py.orig 2018-12-22 16:37:08.000000000 -0700
+++ src/sage/geometry/triangulation/point_configuration.py 2019-01-15 14:12:54.343637341 -0700
@@ -625,7 +625,7 @@ class PointConfiguration(UniqueRepresent
--- src/sage/geometry/triangulation/point_configuration.py.orig 2019-03-23 16:20:40.000000000 -0600
+++ src/sage/geometry/triangulation/point_configuration.py 2019-04-08 12:05:07.091855859 -0600
@@ -623,7 +623,7 @@ class PointConfiguration(UniqueRepresent
['{{0,1,2,4},{1,2,3,4}}']
"""
timeout = 600
@ -323,8 +201,8 @@ diff -up src/sage/geometry/triangulation/point_configuration.py.orig src/sage/ge
proc.expect(r'\.\.\. done\.')
proc.setecho(0)
diff -up src/sage/interfaces/frobby.py.orig src/sage/interfaces/frobby.py
--- src/sage/interfaces/frobby.py.orig 2018-12-22 16:37:08.000000000 -0700
+++ src/sage/interfaces/frobby.py 2019-01-15 14:09:39.587064736 -0700
--- src/sage/interfaces/frobby.py.orig 2019-03-23 16:20:40.000000000 -0600
+++ src/sage/interfaces/frobby.py 2019-04-08 12:05:07.091855859 -0600
@@ -77,7 +77,7 @@ class Frobby:
print("Frobby command: ", repr(command))
print("Frobby input:\n", input)
@ -335,8 +213,8 @@ diff -up src/sage/interfaces/frobby.py.orig src/sage/interfaces/frobby.py
if verbose:
diff -up src/sage/interfaces/gfan.py.orig src/sage/interfaces/gfan.py
--- src/sage/interfaces/gfan.py.orig 2018-12-22 16:37:08.000000000 -0700
+++ src/sage/interfaces/gfan.py 2019-01-17 16:15:45.185372585 -0700
--- src/sage/interfaces/gfan.py.orig 2019-03-23 16:20:41.000000000 -0600
+++ src/sage/interfaces/gfan.py 2019-04-08 12:05:07.092855841 -0600
@@ -66,7 +66,7 @@ class Gfan(object):
if six.PY2:
enc_kwargs = {}
@ -347,8 +225,8 @@ diff -up src/sage/interfaces/gfan.py.orig src/sage/interfaces/gfan.py
gfan_processes = Popen(cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE,
**enc_kwargs)
diff -up src/sage/interfaces/gp.py.orig src/sage/interfaces/gp.py
--- src/sage/interfaces/gp.py.orig 2018-12-22 16:37:08.000000000 -0700
+++ src/sage/interfaces/gp.py 2019-01-15 15:32:12.479565952 -0700
--- src/sage/interfaces/gp.py.orig 2019-03-23 16:20:41.000000000 -0600
+++ src/sage/interfaces/gp.py 2019-04-08 12:05:07.092855841 -0600
@@ -934,17 +934,6 @@ class GpElement(ExpectElement):
"""
return repr(self.type()) == 't_STR'
@ -368,9 +246,9 @@ diff -up src/sage/interfaces/gp.py.orig src/sage/interfaces/gp.py
"""
Return Python float.
diff -up src/sage/interfaces/latte.py.orig src/sage/interfaces/latte.py
--- src/sage/interfaces/latte.py.orig 2018-12-22 16:37:08.000000000 -0700
+++ src/sage/interfaces/latte.py 2019-01-16 09:44:45.946769879 -0700
@@ -147,6 +147,7 @@ def count(arg, ehrhart_polynomial=False,
--- src/sage/interfaces/latte.py.orig 2019-03-23 16:20:41.000000000 -0600
+++ src/sage/interfaces/latte.py 2019-04-08 12:05:07.092855841 -0600
@@ -148,6 +148,7 @@ def count(arg, ehrhart_polynomial=False,
latte_proc = Popen(args,
stdin=PIPE, stdout=PIPE,
stderr=(None if verbose else PIPE),
@ -378,7 +256,7 @@ diff -up src/sage/interfaces/latte.py.orig src/sage/interfaces/latte.py
cwd=str(SAGE_TMP))
ans, err = latte_proc.communicate(arg)
@@ -352,6 +353,7 @@ def integrate(arg, polynomial=None, algo
@@ -355,6 +356,7 @@ def integrate(arg, polynomial=None, algo
latte_proc = Popen(args,
stdin=PIPE, stdout=PIPE,
stderr=(None if verbose else PIPE),
@ -387,8 +265,8 @@ diff -up src/sage/interfaces/latte.py.orig src/sage/interfaces/latte.py
ans, err = latte_proc.communicate(arg)
diff -up src/sage/interfaces/sagespawn.pyx.orig src/sage/interfaces/sagespawn.pyx
--- src/sage/interfaces/sagespawn.pyx.orig 2018-12-22 16:37:08.000000000 -0700
+++ src/sage/interfaces/sagespawn.pyx 2019-01-16 12:08:26.371966835 -0700
--- src/sage/interfaces/sagespawn.pyx.orig 2019-03-23 16:20:41.000000000 -0600
+++ src/sage/interfaces/sagespawn.pyx 2019-04-08 12:05:07.092855841 -0600
@@ -1,6 +1,6 @@
"""
Sage wrapper around pexpect's ``spawn`` class and
@ -437,8 +315,8 @@ diff -up src/sage/interfaces/sagespawn.pyx.orig src/sage/interfaces/sagespawn.py
pass
self.fileobj.close()
diff -up src/sage/misc/parser.pyx.orig src/sage/misc/parser.pyx
--- src/sage/misc/parser.pyx.orig 2018-12-22 16:37:09.000000000 -0700
+++ src/sage/misc/parser.pyx 2019-01-04 10:57:51.277367597 -0700
--- src/sage/misc/parser.pyx.orig 2019-03-23 16:20:41.000000000 -0600
+++ src/sage/misc/parser.pyx 2019-04-08 12:05:07.093855823 -0600
@@ -96,7 +96,7 @@ def token_to_str(int token):
@ -738,8 +616,8 @@ diff -up src/sage/misc/parser.pyx.orig src/sage/misc/parser.pyx
return self.p_list(tokens)
else:
diff -up src/sage/plot/plot3d/plot3d.py.orig src/sage/plot/plot3d/plot3d.py
--- src/sage/plot/plot3d/plot3d.py.orig 2018-12-22 16:37:09.000000000 -0700
+++ src/sage/plot/plot3d/plot3d.py 2019-01-04 10:58:51.476233419 -0700
--- src/sage/plot/plot3d/plot3d.py.orig 2019-03-23 16:20:42.000000000 -0600
+++ src/sage/plot/plot3d/plot3d.py 2019-04-08 12:05:07.093855823 -0600
@@ -188,7 +188,8 @@ class _Coordinates(object):
sage: arb((x+z,y*z,z), z, (x,y))
Arbitrary Coordinates coordinate transform (z in terms of x, y)
@ -751,8 +629,8 @@ diff -up src/sage/plot/plot3d/plot3d.py.orig src/sage/plot/plot3d/plot3d.py
raise ValueError('variables were specified incorrectly for this coordinate system; incorrect variables were %s'%list(set(all_vars).symmetric_difference(set(indep_vars+[dep_var]))))
self.dep_var = dep_var
diff -up src/sage/plot/point.py.orig src/sage/plot/point.py
--- src/sage/plot/point.py.orig 2018-12-22 16:37:09.000000000 -0700
+++ src/sage/plot/point.py 2019-01-04 10:59:15.506780663 -0700
--- src/sage/plot/point.py.orig 2019-03-23 16:20:42.000000000 -0600
+++ src/sage/plot/point.py 2019-04-08 12:05:07.094855805 -0600
@@ -29,7 +29,7 @@ TESTS::
from sage.misc.decorators import options, rename_keyword
from sage.plot.colors import to_mpl_color
@ -772,8 +650,8 @@ diff -up src/sage/plot/point.py.orig src/sage/plot/point.py
try:
diff -up src/sage/repl/display/fancy_repr.py.orig src/sage/repl/display/fancy_repr.py
--- src/sage/repl/display/fancy_repr.py.orig 2018-12-22 16:37:09.000000000 -0700
+++ src/sage/repl/display/fancy_repr.py 2019-01-04 11:00:18.210599287 -0700
--- src/sage/repl/display/fancy_repr.py.orig 2019-03-23 16:20:42.000000000 -0600
+++ src/sage/repl/display/fancy_repr.py 2019-04-08 12:05:07.094855805 -0600
@@ -15,7 +15,7 @@ Representations of objects.
import types
@ -793,8 +671,8 @@ diff -up src/sage/repl/display/fancy_repr.py.orig src/sage/repl/display/fancy_re
else:
# A user-provided repr. Find newlines and replace them with p.break_()
diff -up src/sage/repl/ipython_kernel/interact.py.orig src/sage/repl/ipython_kernel/interact.py
--- src/sage/repl/ipython_kernel/interact.py.orig 2018-12-22 16:37:09.000000000 -0700
+++ src/sage/repl/ipython_kernel/interact.py 2019-01-04 11:01:50.722856305 -0700
--- src/sage/repl/ipython_kernel/interact.py.orig 2019-03-23 16:20:42.000000000 -0600
+++ src/sage/repl/ipython_kernel/interact.py 2019-04-08 12:05:07.094855805 -0600
@@ -35,7 +35,8 @@ EXAMPLES::
from ipywidgets.widgets import SelectionSlider, ValueWidget, ToggleButtons
@ -805,10 +683,10 @@ diff -up src/sage/repl/ipython_kernel/interact.py.orig src/sage/repl/ipython_ker
from .widgets import EvalText, SageColorPicker
from sage.structure.element import parent
from sage.symbolic.ring import SR
diff -up src/sage/rings/integer.pyx.orig
--- src/sage/rings/integer.pyx.orig 2018-12-22 16:37:09.000000000 -0700
+++ src/sage/rings/integer.pyx 2019-01-04 11:02:56.122624135 -0700
@@ -6976,7 +6976,7 @@ cdef int mpz_set_str_python(mpz_ptr z, c
diff -up src/sage/rings/integer.pyx.orig src/sage/rings/integer.pyx
--- src/sage/rings/integer.pyx.orig 2019-03-23 16:20:42.000000000 -0600
+++ src/sage/rings/integer.pyx 2019-04-08 12:05:07.095855787 -0600
@@ -6989,7 +6989,7 @@ cdef int mpz_set_str_python(mpz_ptr z, c
while x[0] == c' ': x += 1 # Strip spaces
# Disallow a sign here
@ -818,9 +696,9 @@ diff -up src/sage/rings/integer.pyx.orig
assert base >= 2
diff -up src/sage/rings/polynomial/pbori.pyx.orig src/sage/rings/polynomial/pbori.pyx
--- src/sage/rings/polynomial/pbori.pyx.orig 2018-12-22 16:37:10.000000000 -0700
+++ src/sage/rings/polynomial/pbori.pyx 2019-01-04 12:21:06.204500703 -0700
@@ -4782,8 +4782,7 @@ cdef class PolynomialConstruct:
--- src/sage/rings/polynomial/pbori.pyx.orig 2019-03-23 16:20:42.000000000 -0600
+++ src/sage/rings/polynomial/pbori.pyx 2019-04-08 12:05:07.096855769 -0600
@@ -4774,8 +4774,7 @@ cdef class PolynomialConstruct:
# So, it is just a conversion. [Simon King]
return (<BooleanPolynomialRing>ring)._element_constructor_(x)
@ -831,9 +709,9 @@ diff -up src/sage/rings/polynomial/pbori.pyx.orig src/sage/rings/polynomial/pbor
cdef class MonomialConstruct:
diff -up src/sage/rings/real_mpfi.pyx.orig src/sage/rings/real_mpfi.pyx
--- src/sage/rings/real_mpfi.pyx.orig 2018-12-22 16:37:10.000000000 -0700
+++ src/sage/rings/real_mpfi.pyx 2019-01-04 11:03:53.650540277 -0700
@@ -1951,12 +1951,12 @@ cdef class RealIntervalFieldElement(Ring
--- src/sage/rings/real_mpfi.pyx.orig 2019-03-23 16:20:42.000000000 -0600
+++ src/sage/rings/real_mpfi.pyx 2019-04-08 12:05:07.097855751 -0600
@@ -1943,12 +1943,12 @@ cdef class RealIntervalFieldElement(Ring
cdef long digits
digits = strlen(lower_s)
@ -848,7 +726,7 @@ diff -up src/sage/rings/real_mpfi.pyx.orig src/sage/rings/real_mpfi.pyx
digits -= 1
upper_expo -= digits
@@ -2125,7 +2125,7 @@ cdef class RealIntervalFieldElement(Ring
@@ -2117,7 +2117,7 @@ cdef class RealIntervalFieldElement(Ring
raise MemoryError("Unable to allocate memory for the mantissa of an interval")
mpz_get_str(tmp_cstr, base, lower_mpz)
digits = strlen(tmp_cstr)
@ -858,9 +736,9 @@ diff -up src/sage/rings/real_mpfi.pyx.orig src/sage/rings/real_mpfi.pyx
mant_string = bytes_to_str(tmp_cstr+1)
sign_string = bytes_to_str(b'-')
diff -up src/sage/rings/real_mpfr.pyx.orig src/sage/rings/real_mpfr.pyx
--- src/sage/rings/real_mpfr.pyx.orig 2018-12-22 16:37:10.000000000 -0700
+++ src/sage/rings/real_mpfr.pyx 2019-01-04 12:22:18.194171036 -0700
@@ -2032,7 +2032,7 @@ cdef class RealNumber(sage.structure.ele
--- src/sage/rings/real_mpfr.pyx.orig 2019-03-23 16:20:42.000000000 -0600
+++ src/sage/rings/real_mpfr.pyx 2019-04-08 12:05:07.098855733 -0600
@@ -2039,7 +2039,7 @@ cdef class RealNumber(sage.structure.ele
if s is NULL:
raise RuntimeError("unable to convert an mpfr number to a string")
# t contains just digits (no sign, decimal point or exponent)
@ -870,8 +748,8 @@ diff -up src/sage/rings/real_mpfr.pyx.orig src/sage/rings/real_mpfr.pyx
t = char_to_str(s + 1)
else:
diff -up src/sage/structure/sage_object.pyx.orig src/sage/structure/sage_object.pyx
--- src/sage/structure/sage_object.pyx.orig 2018-12-22 16:37:10.000000000 -0700
+++ src/sage/structure/sage_object.pyx 2019-01-04 13:48:09.055790438 -0700
--- src/sage/structure/sage_object.pyx.orig 2019-03-23 16:20:43.000000000 -0600
+++ src/sage/structure/sage_object.pyx 2019-04-08 12:05:07.098855733 -0600
@@ -665,7 +665,7 @@ cdef class SageObject:
try:
s = self._interface_init_(I)
@ -882,9 +760,9 @@ diff -up src/sage/structure/sage_object.pyx.orig src/sage/structure/sage_object.
if c:
try:
diff -up src/sage/symbolic/expression.pyx.orig src/sage/symbolic/expression.pyx
--- src/sage/symbolic/expression.pyx.orig 2018-12-22 16:37:10.000000000 -0700
+++ src/sage/symbolic/expression.pyx 2019-01-04 11:04:35.829745704 -0700
@@ -12955,7 +12955,7 @@ cdef class hold_class:
--- src/sage/symbolic/expression.pyx.orig 2019-03-23 16:20:43.000000000 -0600
+++ src/sage/symbolic/expression.pyx 2019-04-08 12:05:07.100855697 -0600
@@ -12915,7 +12915,7 @@ cdef class hold_class:
sage: SR(2)^5
32
"""
@ -893,7 +771,7 @@ diff -up src/sage/symbolic/expression.pyx.orig src/sage/symbolic/expression.pyx
def __exit__(self, *args):
"""
@@ -12968,7 +12968,7 @@ cdef class hold_class:
@@ -12928,7 +12928,7 @@ cdef class hold_class:
sage: SR(2)^5
32
"""
@ -903,9 +781,9 @@ diff -up src/sage/symbolic/expression.pyx.orig src/sage/symbolic/expression.pyx
def start(self):
"""
diff -up src/setup.py.orig src/setup.py
--- src/setup.py.orig 2019-01-04 10:27:47.032123257 -0700
+++ src/setup.py 2019-01-04 11:05:11.337077724 -0700
@@ -284,7 +284,7 @@ class sage_build_cython(Command):
--- src/setup.py.orig 2019-04-08 11:45:58.283274716 -0600
+++ src/setup.py 2019-04-08 12:05:07.101855679 -0600
@@ -232,7 +232,7 @@ class sage_build_cython(Command):
cdivision=True,
embedsignature=True,
fast_getattr=True,