commit
66fa457ba1
@ -130,7 +130,7 @@ let
|
|||||||
singular = pkgs.singular.override { inherit flint; };
|
singular = pkgs.singular.override { inherit flint; };
|
||||||
|
|
||||||
# https://trac.sagemath.org/ticket/26625
|
# https://trac.sagemath.org/ticket/26625
|
||||||
maxima-ecl = pkgs.maxima-ecl-5_41;
|
maxima-ecl = pkgs.maxima-ecl;
|
||||||
|
|
||||||
# *not* to confuse with the python package "pynac"
|
# *not* to confuse with the python package "pynac"
|
||||||
pynac = pkgs.pynac.override { inherit singular flint; };
|
pynac = pkgs.pynac.override { inherit singular flint; };
|
||||||
|
@ -1,26 +0,0 @@
|
|||||||
diff --git a/src/sage/misc/package.py b/src/sage/misc/package.py
|
|
||||||
index 3bca15d53b..7cf04ff8d1 100644
|
|
||||||
--- a/src/sage/misc/package.py
|
|
||||||
+++ b/src/sage/misc/package.py
|
|
||||||
@@ -478,16 +478,16 @@ def package_manifest(package):
|
|
||||||
|
|
||||||
EXAMPLES::
|
|
||||||
|
|
||||||
- sage: from sage.misc.package import package_manifest
|
|
||||||
- sage: sagetex_manifest = package_manifest('sagetex')
|
|
||||||
- sage: sagetex_manifest['package_name'] == 'sagetex'
|
|
||||||
+ sage: from sage.misc.package import package_manifest # optional - buildsystem
|
|
||||||
+ sage: sagetex_manifest = package_manifest('sagetex') # optional - buildsystem
|
|
||||||
+ sage: sagetex_manifest['package_name'] == 'sagetex' # optional - buildsystem
|
|
||||||
True
|
|
||||||
- sage: 'files' in sagetex_manifest
|
|
||||||
+ sage: 'files' in sagetex_manifest # optional - buildsystem
|
|
||||||
True
|
|
||||||
|
|
||||||
Test a nonexistent package::
|
|
||||||
|
|
||||||
- sage: package_manifest('dummy-package')
|
|
||||||
+ sage: package_manifest('dummy-package') # optional - buildsystem
|
|
||||||
Traceback (most recent call last):
|
|
||||||
...
|
|
||||||
KeyError: 'dummy-package'
|
|
@ -0,0 +1,57 @@
|
|||||||
|
diff --git a/src/sage_setup/docbuild/__init__.py b/src/sage_setup/docbuild/__init__.py
|
||||||
|
index 0f2700168a..60f71357d2 100644
|
||||||
|
--- a/src/sage_setup/docbuild/__init__.py
|
||||||
|
+++ b/src/sage_setup/docbuild/__init__.py
|
||||||
|
@@ -86,26 +86,6 @@ def builder_helper(type):
|
||||||
|
"""
|
||||||
|
Returns a function which builds the documentation for
|
||||||
|
output type ``type``.
|
||||||
|
-
|
||||||
|
- TESTS:
|
||||||
|
-
|
||||||
|
- Check that :trac:`25161` has been resolved::
|
||||||
|
-
|
||||||
|
- sage: from sage_setup.docbuild import DocBuilder, setup_parser
|
||||||
|
- sage: DocBuilder._options = setup_parser().parse_args([])[0] # builder_helper needs _options to be set
|
||||||
|
-
|
||||||
|
- sage: import sage_setup.docbuild.sphinxbuild
|
||||||
|
- sage: def raiseBaseException():
|
||||||
|
- ....: raise BaseException("abort pool operation")
|
||||||
|
- sage: original_runsphinx, sage_setup.docbuild.sphinxbuild.runsphinx = sage_setup.docbuild.sphinxbuild.runsphinx, raiseBaseException
|
||||||
|
-
|
||||||
|
- sage: from sage_setup.docbuild import builder_helper, build_many, build_ref_doc
|
||||||
|
- sage: helper = builder_helper("html")
|
||||||
|
- sage: try:
|
||||||
|
- ....: build_many(build_ref_doc, [("docname", "en", "html", {})])
|
||||||
|
- ....: except Exception as E:
|
||||||
|
- ....: "Non-exception during docbuild: abort pool operation" in str(E)
|
||||||
|
- True
|
||||||
|
"""
|
||||||
|
def f(self, *args, **kwds):
|
||||||
|
output_dir = self._output_dir(type)
|
||||||
|
@@ -127,10 +107,9 @@ def builder_helper(type):
|
||||||
|
logger.debug(build_command)
|
||||||
|
|
||||||
|
# Run Sphinx with Sage's special logger
|
||||||
|
- sys.argv = ["sphinx-build"] + build_command.split()
|
||||||
|
- from .sphinxbuild import runsphinx
|
||||||
|
+ args = "python -um sage_setup.docbuild.sphinxbuild -N".split() + build_command.split()
|
||||||
|
try:
|
||||||
|
- runsphinx()
|
||||||
|
+ subprocess.check_call(args)
|
||||||
|
except Exception:
|
||||||
|
if ABORT_ON_ERROR:
|
||||||
|
raise
|
||||||
|
diff --git a/src/sage_setup/docbuild/sphinxbuild.py b/src/sage_setup/docbuild/sphinxbuild.py
|
||||||
|
index 9a2fba79bc..77c8ed3592 100644
|
||||||
|
--- a/src/sage_setup/docbuild/sphinxbuild.py
|
||||||
|
+++ b/src/sage_setup/docbuild/sphinxbuild.py
|
||||||
|
@@ -318,3 +318,8 @@ def runsphinx():
|
||||||
|
sys.stderr = saved_stderr
|
||||||
|
sys.stdout.flush()
|
||||||
|
sys.stderr.flush()
|
||||||
|
+
|
||||||
|
+if __name__ == '__main__':
|
||||||
|
+ import sys
|
||||||
|
+ sys.argv[0] = "sphinx-build"
|
||||||
|
+ runsphinx()
|
@ -10,14 +10,14 @@
|
|||||||
# all get the same sources with the same patches applied.
|
# all get the same sources with the same patches applied.
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
version = "8.7";
|
version = "8.8";
|
||||||
pname = "sage-src";
|
pname = "sage-src";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "sagemath";
|
owner = "sagemath";
|
||||||
repo = "sage";
|
repo = "sage";
|
||||||
rev = version;
|
rev = version;
|
||||||
sha256 = "05vvrd6syh0hlmrk6kzjrwd0hpmvxp8vr8p3mkjb0jh5p2kjdd27";
|
sha256 = "0jm7zdkz8wfgrmf6620jfr8kgvprrz3qfl8gzx6rl5z5cm734b6x";
|
||||||
};
|
};
|
||||||
|
|
||||||
# Patches needed because of particularities of nix or the way this is packaged.
|
# Patches needed because of particularities of nix or the way this is packaged.
|
||||||
@ -45,46 +45,23 @@ stdenv.mkDerivation rec {
|
|||||||
# Fixes a potential race condition which can lead to transient doctest failures.
|
# Fixes a potential race condition which can lead to transient doctest failures.
|
||||||
./patches/fix-ecl-race.patch
|
./patches/fix-ecl-race.patch
|
||||||
|
|
||||||
# Parallelize docubuild using subprocesses, fixing an isolation issue. See
|
|
||||||
# https://groups.google.com/forum/#!topic/sage-packaging/YGOm8tkADrE
|
|
||||||
(fetchpatch {
|
|
||||||
name = "sphinx-docbuild-subprocesses.patch";
|
|
||||||
url = "https://salsa.debian.org/science-team/sagemath/raw/8a215b17e6f791ddfae6df8ce6d01dfb89acb434/debian/patches/df-subprocess-sphinx.patch";
|
|
||||||
sha256 = "07p9i0fwjgapmfvmi436yn6v60p8pvmxqjc93wsssqgh5kd8qw3n";
|
|
||||||
stripLen = 1;
|
|
||||||
})
|
|
||||||
|
|
||||||
# Part of the build system. Should become unnecessary with sage 8.8.
|
|
||||||
# Upstream discussion here: https://trac.sagemath.org/ticket/27124#comment:33
|
|
||||||
./patches/do-not-test-package-manifests.patch
|
|
||||||
|
|
||||||
# Not necessary since library location is set explicitly
|
# Not necessary since library location is set explicitly
|
||||||
# https://trac.sagemath.org/ticket/27660#ticket
|
# https://trac.sagemath.org/ticket/27660#ticket
|
||||||
./patches/do-not-test-find-library.patch
|
./patches/do-not-test-find-library.patch
|
||||||
|
|
||||||
# https://trac.sagemath.org/ticket/27697#ticket
|
|
||||||
(fetchpatch {
|
|
||||||
name = "pplpy-doc-location-configurable.patch";
|
|
||||||
url = "https://git.sagemath.org/sage.git/patch/?h=c4d966e7cb0c7b87c55d52dc6f46518433a2a0a2";
|
|
||||||
sha256 = "0pqbbsx8mriwny422s9mp3z5d095cnam32sm62q4mxk8g8jb9vm9";
|
|
||||||
})
|
|
||||||
|
|
||||||
# https://trac.sagemath.org/ticket/28007
|
# https://trac.sagemath.org/ticket/28007
|
||||||
./patches/threejs-offline.patch
|
./patches/threejs-offline.patch
|
||||||
|
|
||||||
|
# Parallelize docubuild using subprocesses, fixing an isolation issue. See
|
||||||
|
# https://groups.google.com/forum/#!topic/sage-packaging/YGOm8tkADrE
|
||||||
|
./patches/sphinx-docbuild-subprocesses.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
# Since sage unfortunately does not release bugfix releases, packagers must
|
# Since sage unfortunately does not release bugfix releases, packagers must
|
||||||
# fix those bugs themselves. This is for critical bugfixes, where "critical"
|
# fix those bugs themselves. This is for critical bugfixes, where "critical"
|
||||||
# == "causes (transient) doctest failures / somebody complained".
|
# == "causes (transient) doctest failures / somebody complained".
|
||||||
bugfixPatches = [
|
bugfixPatches = [ ];
|
||||||
# Transient doctest failure in src/sage/modular/abvar/torsion_subgroup.py
|
|
||||||
# https://trac.sagemath.org/ticket/27477
|
|
||||||
(fetchpatch {
|
|
||||||
name = "sig_on_in_matrix_sparce.patch";
|
|
||||||
url = "https://git.sagemath.org/sage.git/patch?id2=10407524b18659e14e184114b61c043fb816f3c2&id=c9b0cc9d0b8748ab85e568f8f57f316c5e8cbe54";
|
|
||||||
sha256 = "0wgp7yvn9sm1ynlhcr4l0hzmvr2n28llg4xc01p6k1zz4im64c17";
|
|
||||||
})
|
|
||||||
];
|
|
||||||
|
|
||||||
# Patches needed because of package updates. We could just pin the versions of
|
# Patches needed because of package updates. We could just pin the versions of
|
||||||
# dependencies, but that would lead to rebuilds, confusion and the burdons of
|
# dependencies, but that would lead to rebuilds, confusion and the burdons of
|
||||||
@ -116,35 +93,6 @@ stdenv.mkDerivation rec {
|
|||||||
stripLen = 1;
|
stripLen = 1;
|
||||||
})
|
})
|
||||||
|
|
||||||
# https://trac.sagemath.org/ticket/26451
|
|
||||||
(fetchSageDiff {
|
|
||||||
name = "sphinx-1.8.patch";
|
|
||||||
base = "8.7";
|
|
||||||
rev = "737afd8f314bd1e16feaec562bb4b5efa2effa8b";
|
|
||||||
sha256 = "0n56ss88ds662bp49j23z5c2i6hsn3jynxw13wv76hyl0h7l1hjh";
|
|
||||||
})
|
|
||||||
|
|
||||||
# https://trac.sagemath.org/ticket/27653
|
|
||||||
(fetchpatch {
|
|
||||||
name = "sympy-1.4.patch";
|
|
||||||
url = "https://git.sagemath.org/sage.git/patch/?h=3277ba76d0ba7174608a31a0c6623e9210c63e3d";
|
|
||||||
sha256 = "09avaanwmdgqv14mmllbgw9z2scf4lc0y0kzdhlriiq8ss9j8iir";
|
|
||||||
})
|
|
||||||
|
|
||||||
# https://trac.sagemath.org/ticket/27094
|
|
||||||
(fetchpatch {
|
|
||||||
name = "gap-4.10.1.patch";
|
|
||||||
url = "https://git.sagemath.org/sage.git/patch?id=d3483110474591ea6cc8e3210cd884f3e0018b3e";
|
|
||||||
sha256 = "028i6h8l8npwzx5z0ax0rcywl85gc83qw1jf93zf523msdfcsk0n";
|
|
||||||
})
|
|
||||||
|
|
||||||
# https://trac.sagemath.org/ticket/27738
|
|
||||||
(fetchpatch {
|
|
||||||
name = "R-3.6.0.patch";
|
|
||||||
url = "https://git.sagemath.org/sage.git/patch/?h=8b7dbd0805d02d0e8674a272e161ceb24a637966";
|
|
||||||
sha256 = "1c81f13z1w62s06yvp43gz6vkp8mxcs289n6l4gj9xj10slimzff";
|
|
||||||
})
|
|
||||||
|
|
||||||
# https://trac.sagemath.org/ticket/26932
|
# https://trac.sagemath.org/ticket/26932
|
||||||
(fetchSageDiff {
|
(fetchSageDiff {
|
||||||
name = "givaro-4.1.0_fflas-ffpack-2.4.0_linbox-1.6.0.patch";
|
name = "givaro-4.1.0_fflas-ffpack-2.4.0_linbox-1.6.0.patch";
|
||||||
@ -152,13 +100,6 @@ stdenv.mkDerivation rec {
|
|||||||
rev = "c11d9cfa23ff9f77681a8f12742f68143eed4504";
|
rev = "c11d9cfa23ff9f77681a8f12742f68143eed4504";
|
||||||
sha256 = "0xzra7mbgqvahk9v45bjwir2mqz73hrhhy314jq5nxrb35ysdxyi";
|
sha256 = "0xzra7mbgqvahk9v45bjwir2mqz73hrhhy314jq5nxrb35ysdxyi";
|
||||||
})
|
})
|
||||||
|
|
||||||
# https://trac.sagemath.org/ticket/26718
|
|
||||||
(fetchpatch {
|
|
||||||
name = "threejs-r100.patch";
|
|
||||||
url = "https://git.sagemath.org/sage.git/patch/?h=86c5bb000259e6de5d7c60afc608a4b0d010b690";
|
|
||||||
sha256 = "0sgqqd4df2bxsq19b6kfy7dvgyxprlpg7f3xx7g3fs8ij937m352";
|
|
||||||
})
|
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = nixPatches ++ bugfixPatches ++ packageUpgradePatches;
|
patches = nixPatches ++ bugfixPatches ++ packageUpgradePatches;
|
||||||
|
@ -22955,12 +22955,6 @@ in
|
|||||||
ecl-fasl = true;
|
ecl-fasl = true;
|
||||||
sbcl = null;
|
sbcl = null;
|
||||||
};
|
};
|
||||||
# old version temporarily kept for sage
|
|
||||||
maxima-ecl-5_41 = callPackage ../applications/science/math/maxima/5.41.nix {
|
|
||||||
ecl = ecl_16_1_2;
|
|
||||||
ecl-fasl = true;
|
|
||||||
sbcl = null;
|
|
||||||
};
|
|
||||||
|
|
||||||
mxnet = callPackage ../applications/science/math/mxnet {
|
mxnet = callPackage ../applications/science/math/mxnet {
|
||||||
inherit (linuxPackages) nvidia_x11;
|
inherit (linuxPackages) nvidia_x11;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user