sagemath/sagemath-sagedoc.patch
Jerry James 55beead27c Update to sagemath 8.5.
Also:
- Bundle ipython again; Fedora version is too far ahead.  Also have to bundle
  prompt_toolkit since Fedora version is too far ahead of bundled ipython.
- Drop LANGUAGES variable setting, now ignored by the sagemath build system.
- Drop unused SAGE_CBLAS variable from /usr/bin/sage.
- Do not force the C locale when launching sagemath.
- Allow the user to override SAGE_DEBUG in /usr/bin/sage.
- Add -ecm, -giac, and -latte patches to fix interactions with external tools.
- Add -sigfpe patch from upstream.
2019-01-17 19:27:08 -07:00

108 lines
4.8 KiB
Diff

diff -up src/sage/doctest/control.py.orig src/sage/doctest/control.py
--- src/sage/doctest/control.py.orig 2018-12-22 16:37:08.000000000 -0700
+++ src/sage/doctest/control.py 2019-01-16 09:42:51.238828275 -0700
@@ -106,7 +106,6 @@ class DocTestDefaults(SageObject):
self.valgrind = False
self.massif = False
self.cachegrind = False
- self.omega = False
self.failed = False
self.new = False
self.show_skipped = False
@@ -309,7 +308,7 @@ class DocTestController(SageObject):
if options.gdb or options.debug:
# Interactive debuggers: "infinite" timeout
options.timeout = 0
- elif options.valgrind or options.massif or options.cachegrind or options.omega:
+ elif options.valgrind or options.massif or options.cachegrind:
# Non-interactive debuggers: 48 hours
options.timeout = int(os.getenv('SAGE_TIMEOUT_VALGRIND', 48 * 60 * 60))
elif options.long:
@@ -1099,13 +1098,8 @@ class DocTestController(SageObject):
elif opt.cachegrind:
toolname = "cachegrind"
flags = os.getenv("SAGE_CACHEGRIND_FLAGS", "")
- elif opt.omega:
- toolname = "exp-omega"
- flags = os.getenv("SAGE_OMEGA_FLAGS", "")
cmd = "exec valgrind --tool=%s "%(toolname)
flags += ''' --log-file="%s" ''' % logfile
- if opt.omega:
- toolname = "omega"
if "%s" in flags:
flags %= toolname + ".%p" # replace %s with toolname
cmd += flags + sage_cmd
@@ -1190,10 +1184,10 @@ class DocTestController(SageObject):
"""
opt = self.options
- L = (opt.gdb, opt.valgrind, opt.massif, opt.cachegrind, opt.omega)
+ L = (opt.gdb, opt.valgrind, opt.massif, opt.cachegrind)
if any(L):
if L.count(True) > 1:
- self.log("You may only specify one of gdb, valgrind/memcheck, massif, cachegrind, omega")
+ self.log("You may only specify one of gdb, valgrind/memcheck, massif, cachegrind")
return 2
return self.run_val_gdb()
else:
diff -up src/sage/interfaces/singular.py.orig src/sage/interfaces/singular.py
--- src/sage/interfaces/singular.py.orig 2018-12-22 16:37:08.000000000 -0700
+++ src/sage/interfaces/singular.py 2019-01-16 09:42:51.240828239 -0700
@@ -2264,7 +2264,7 @@ def generate_docstring_dictionary():
node_names.clear()
import os
- singular_docdir = os.environ['SINGULARPATH']+"/../info/"
+ singular_docdir = "/usr/share/info/"
new_node = re.compile(r"File: singular\.hlp, Node: ([^,]*),.*")
new_lookup = re.compile(r"\* ([^:]*):*([^.]*)\..*")
@@ -2272,8 +2272,9 @@ def generate_docstring_dictionary():
L, in_node, curr_node = [], False, None
# singular.hlp contains a few iso-5559-1 encoded special characters
- with io.open(os.path.join(singular_docdir, 'singular.hlp'),
- encoding='latin-1') as f:
+ import gzip
+ with gzip.open(os.path.join(singular_doctir, 'singular.hlp.gz'),
+ encoding='latin-1') as f:
for line in f:
m = re.match(new_node,line)
if m:
diff -up src/sage_setup/docbuild/ext/multidocs.py.orig src/sage_setup/docbuild/ext/multidocs.py
--- src/sage_setup/docbuild/ext/multidocs.py.orig 2018-12-22 16:37:10.000000000 -0700
+++ src/sage_setup/docbuild/ext/multidocs.py 2019-01-16 09:42:51.241828221 -0700
@@ -84,8 +84,11 @@ def merge_environment(app, env):
for ind in newalldoc:
# treat subdocument source as orphaned file and don't complain
md = env.metadata.get(ind, dict())
- md['orphan'] = 1
- env.metadata[ind] = md
+ try:
+ md['orphan'] = 1
+ env.metadata[ind] = md
+ except AttributeError:
+ env.metadata[ind] = {'orphan'}
# merge the citations
newcite = {}
citations = docenv.domaindata["std"]["citations"]
diff -up src/sage_setup/docbuild/__init__.py.orig src/sage_setup/docbuild/__init__.py
--- src/sage_setup/docbuild/__init__.py.orig 2018-12-22 16:37:10.000000000 -0700
+++ src/sage_setup/docbuild/__init__.py 2019-01-16 09:42:51.242828203 -0700
@@ -279,13 +279,14 @@ def build_many(target, args):
# map_async handles KeyboardInterrupt correctly. Plain map and
# apply_async does not, so don't use it.
x = pool.map_async(target, args, 1)
+ ret = []
try:
- ret = x.get(99999)
+ ret = x.get(3600)
pool.close()
pool.join()
except Exception:
- pool.terminate()
if ABORT_ON_ERROR:
+ pool.terminate()
raise
return ret