summary refs log tree commit diff
path: root/pkgs/applications/science/math/sage/sage-src.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/science/math/sage/sage-src.nix')
-rw-r--r--pkgs/applications/science/math/sage/sage-src.nix137
1 files changed, 42 insertions, 95 deletions
diff --git a/pkgs/applications/science/math/sage/sage-src.nix b/pkgs/applications/science/math/sage/sage-src.nix
index c97785c574c..1144057b188 100644
--- a/pkgs/applications/science/math/sage/sage-src.nix
+++ b/pkgs/applications/science/math/sage/sage-src.nix
@@ -3,17 +3,20 @@
 , fetchpatch
 }:
 stdenv.mkDerivation rec {
-  version = "8.2";
+  version = "8.3";
   name = "sage-src-${version}";
 
   src = fetchFromGitHub {
     owner = "sagemath";
     repo = "sage";
     rev = version;
-    sha256 = "0d7vc16s7dj23an2cb8v5bhbnc6nsw20qhnnxr0xh8qg629027b8";
+    sha256 = "0mbm99m5xry21xpi4q3q96gx392liwbifywf5awvl0j85a7rkfyx";
   };
 
   nixPatches = [
+    # https://trac.sagemath.org/ticket/25809
+    ./patches/spkg-scripts.patch
+
     # https://trac.sagemath.org/ticket/25309
     (fetchpatch {
       name = "spkg-paths.patch";
@@ -26,14 +29,7 @@ stdenv.mkDerivation rec {
       sha256 = "14s50yg3hpw9cp3v581dx7zfmpm2j972im7x30iwki8k45mjvk3i";
     })
 
-    # https://trac.sagemath.org/ticket/25328
-    # https://trac.sagemath.org/ticket/25546
     # https://trac.sagemath.org/ticket/25722
-    (fetchpatch {
-      name = "install-jupyter-kernel-in-correct-prefix.patch";
-      url = "https://git.sagemath.org/sage.git/patch?id=72167b98e3f64326df6b2c78785df25539472fcc";
-      sha256 = "0pscnjhm7r2yr2rxnv4kkkq626vwaja720lixa3m3w9rwlxll5a7";
-    })
     ./patches/test-in-tmpdir.patch
 
     # https://trac.sagemath.org/ticket/25358
@@ -43,27 +39,13 @@ stdenv.mkDerivation rec {
       sha256 = "1hhannz7xzprijakn2w2d0rhd5zv2zikik9p51i87bas3nc658f7";
     })
 
-    # https://trac.sagemath.org/ticket/25357 rebased on 8.2
-    ./patches/python3-syntax-without-write.patch
-
-    # https://trac.sagemath.org/ticket/25314
-    (fetchpatch {
-      name = "make-qepcad-test-optional.patch";
-      url = "https://git.sagemath.org/sage.git/patch/?h=fe294c58bd035ef427e268901d54a6faa0058138";
-      sha256 = "003d5baf5c0n5rfg010ijwkwz8kg0s414cxwczs2vhdayxdixbix";
-    })
-
+    # Unfortunately inclusion in upstream sage was rejected. Instead the bug was
+    # fixed in python, but of course not backported to 2.7. So we'll probably
+    # have to keep this around until 2.7 is deprecated.
     # https://trac.sagemath.org/ticket/25316
+    # https://github.com/python/cpython/pull/7476
     ./patches/python-5755-hotpatch.patch
 
-    # https://trac.sagemath.org/ticket/25354
-    # https://trac.sagemath.org/ticket/25531
-    (fetchpatch {
-      name = "cysignals-include.patch";
-      url = "https://git.sagemath.org/sage.git/patch/?h=28778bd25a37c80884d2b24e0683fb2989300cef";
-      sha256 = "0fiiiw91pgs8avm9ggj8hb64bhqzl6jcw094d94nhirmh8w2jmc5";
-    })
-
     # https://trac.sagemath.org/ticket/25315
     (fetchpatch {
       name = "find-libraries-in-dyld-library-path.patch";
@@ -71,16 +53,13 @@ stdenv.mkDerivation rec {
       sha256 = "1k3afq3qlzmgqwx6rzs5wv153vv9dsf5rk8pi61g57l3r3npbjmc";
     })
 
-    # Pari upstream has since accepted a patch, so this patch won't be necessary once sage updates pari.
-    # https://trac.sagemath.org/ticket/25312
-    ./patches/pari-stackwarn.patch
-
-    # https://trac.sagemath.org/ticket/25311
-    ./patches/zn_poly_version.patch
-
     # https://trac.sagemath.org/ticket/25345
     # (upstream patch doesn't apply on 8.2 source)
     ./patches/dochtml-optional.patch
+
+    # work with pari with threads enabled at compile time (disable them at runtime)
+    # https://trac.sagemath.org/ticket/26002
+    ./patches/pari-no-threads.patch
   ];
 
   packageUpgradePatches = [
@@ -106,87 +85,55 @@ stdenv.mkDerivation rec {
     # the last version.
     ./patches/eclib-regulator-precision.patch
 
-    # sphinx 1.6 -> 1.7 upgrade
-    # https://trac.sagemath.org/ticket/24935
-    ./patches/sphinx-1.7.patch
-
-    # Adapt hashes to new boost version
-    # https://trac.sagemath.org/ticket/22243
-    # (this ticket doesn't only upgrade boost but also avoids this problem in the future)
-    (fetchpatch {
-      name = "boost-upgrade.patch";
-      url = "https://git.sagemath.org/sage.git/patch?id=a24a9c6b30b93957333a3116196214a931325b69";
-      sha256 = "0z3870g2ms2a81vnw08dc2i4k7jr62w8fggvcdwaavgd1wvdxwfl";
-    })
-
-    # gfan 0.6.2
-    # https://trac.sagemath.org/ticket/23353
-    (fetchpatch {
-      name = "gfan-update.patch";
-      url = "https://git.sagemath.org/sage.git/patch/?h=420215fc469cde733ec7a339e59b78ad6eec804c&id=112498a293ea2bf563e41aed35f1aa608f01b349";
-      sha256 = "0ga3hkx8cr23dpc919lgvpi5lmy0d728jkq9z6kf0fl9s8g31mxb";
-    })
-
     # New glpk version has new warnings, filter those out until upstream sage has found a solution
     # https://trac.sagemath.org/ticket/24824
+    ./patches/pari-stackwarn.patch # not actually necessary since tha pari upgrade, but necessary for the glpk patch to apply
     (fetchpatch {
       url = "https://salsa.debian.org/science-team/sagemath/raw/58bbba93a807ca2933ca317501d093a1bb4b84db/debian/patches/dt-version-glpk-4.65-ignore-warnings.patch";
       sha256 = "0b9293v73wb4x13wv5zwyjgclc01zn16msccfzzi6znswklgvddp";
       stripLen = 1;
     })
 
-    # https://trac.sagemath.org/ticket/25329
-    (fetchpatch {
-      name = "dont-check-exact-glpk-version.patch";
-      url = "https://git.sagemath.org/sage.git/patch?id2=8bdc326ba57d1bb9664f63cf165a9e9920cc1afc&id=89d068d8d77316bfffa6bf8e9ebf70b3b3b88e5c";
-      sha256 = "00knwxs6fmymfgfl0q5kcavmxm9sf90a4r76y35n5s55gj8pl918";
-    })
+    # Only formatting changes.
+    # https://trac.sagemath.org/ticket/25260
+    ./patches/numpy-1.14.3.patch
 
-    # https://trac.sagemath.org/ticket/25355
-    (fetchpatch {
-      name = "maxima-5.41.0.patch";
-      url = "https://git.sagemath.org/sage.git/patch/?id=87328023c4739abdf24108038201e3fa9bdfc739";
-      sha256 = "0hxi7qr5mfx1bc32r8j7iba4gzd7c6v63asylyf5cbyp86azpb7i";
-    })
+    # https://trac.sagemath.org/ticket/25862
+    ./patches/eclib-20180710.patch
+
+    # https://trac.sagemath.org/ticket/24735
+    ./patches/singular-4.1.1p2.patch
 
-    # Update cddlib from 0.94g to 0.94h.
-    # https://trac.sagemath.org/ticket/25341 (doesn't apply to 8.2 sources)
+    # https://trac.sagemath.org/ticket/25567 and dependency #25635
     (fetchpatch {
-      url = "https://salsa.debian.org/science-team/sagemath/raw/58bbba93a807ca2933ca317501d093a1bb4b84db/debian/patches/u2-version-cddlib-094h.patch";
-      sha256 = "0fmw7pzbaxs2dshky6iw9pr8i23p9ih2y2lw661qypdrxh5xw03k";
-      stripLen = 1;
+      name = "pari-upgrade-dependency.patch";
+      url = "https://git.sagemath.org/sage.git/patch/?id=6995e7cae1b3476ad0145f8dfc897cf91f0c3c4d";
+      sha256 = "1dvhabl1c9pwd9xkjvbjjg15mvb14b24p1f3cby1mlqk34d4lrs6";
     })
     (fetchpatch {
-      name = "revert-cddlib-doctest-changes.patch";
-      url = "https://git.sagemath.org/sage.git/patch/?id=269c1e1551285566b8ba7a2b890989e5590e9f11";
-      sha256 = "12bcjhq7hm2pmmj2bgjvcffjyls2x7q61ivlnaj5v5bsvhc183iy";
-      revert = true;
+      name = "pari-2.11.0.patch";
+      url = "https://git.sagemath.org/sage.git/patch/?id=7af4748cab37d651eaa88be501db88f4a5ffc584";
+      sha256 = "13f740ly3c19gcmhjngiycvmc3mcfj61y00i6jv0wmfgpm2z3ank";
     })
 
-
-    # Only formatting changes.
-    # https://trac.sagemath.org/ticket/25260
-    ./patches/numpy-1.14.3.patch
-
-    # https://trac.sagemath.org/ticket/24374
+    # ntl upgrade
     (fetchpatch {
-      name = "networkx-2.1.patch";
-      url = "https://salsa.debian.org/science-team/sagemath/raw/487df9ae48ca1d93d9b1cb3af8745d31e30fb741/debian/patches/u0-version-networkx-2.1.patch";
-      sha256 = "1xxxawygbgxgvlv7b4w8hhzgdnva4rhmgdxaiaa3pwdwln0yc750";
-      stripLen = 1;
+      name = "lcalc-c++11.patch";
+      url = "https://git.archlinux.org/svntogit/community.git/plain/trunk/sagemath-lcalc-c++11.patch?h=packages/sagemath&id=0e31ae526ab7c6b5c0bfacb3f8b1c4fd490035aa";
+      sha256 = "0p5wnvbx65i7cp0bjyaqgp4rly8xgnk12pqwaq3dqby0j2bk6ijb";
     })
 
-    # https://trac.sagemath.org/ticket/24927 rebased
-    ./patches/arb-2.13.0.patch
-
-    # https://trac.sagemath.org/ticket/24838 rebased
-    ./patches/pynac-0.7.22.patch
-
-    # https://trac.sagemath.org/ticket/25862
-    ./patches/eclib-20180710.patch
+    # cddlib 0.94i -> 0.94j
+    (fetchpatch {
+      name = "cddlib-0.94j.patch";
+      url = "https://git.sagemath.org/sage.git/patch/?id=2ab1546b3e21d1d0ab3b4fcd58576848b3a2d888";
+      sha256 = "1c5gnasq7y9xxj762bn79bis0zi8d9bgg7jzlf64ifixsrc5cymb";
+    })
   ];
 
-  patches = nixPatches ++ packageUpgradePatches;
+  patches = nixPatches ++ packageUpgradePatches ++ [
+    ./patches/known-padics-bug.patch
+  ];
 
   postPatch = ''
     # make sure shebangs etc are fixed, but sage-python23 still works