## Package: sagemath / 8.2-5

### Metadata

Package | Version | Patches format |
---|---|---|

sagemath | 8.2-5 | 3.0 (quilt) |

### Patch series

view the series filePatch | File delta | Description |
---|---|---|

u0 version numpy 1.14.3.patch #25260 | (download) |
sage/src/doc/en/faq/faq-usage.rst |
2 1 + 1 - 0 ! |
fix doctests with new numpy version |

u0 version pynac 0.7.19.patch #24838 | (download) |
sage/src/sage/calculus/calculus.py |
2 1 + 1 - 0 ! |
24838: doctest fixes |

u0 version sphinx 1.7.patch #24935 | (download) |
sage/src/sage/misc/sphinxify.py |
6 3 + 3 - 0 ! |
upgrade to sphinx 1.7.1 |

u0 version pbori boost1.62 hashes.patch #22243 | (download) |
sage/src/sage/rings/polynomial/pbori.pyx |
12 6 + 6 - 0 ! |
change expected brial hashes for change in hash_combine in boost 1.62 The hash function for boost::hash_combine() which is called in libbrial/include/polybori/routines/pbori_routines_hash.h was changed for boost 1.62 in the commit https://github.com/boostorg/functional/commit/45eeb170f2b1372b4b5e52744d3c51eddb285b42 . Therefore the hashes changed. For the same reason brial in Debian has the patch testsuite-boost-1.62.patch. |

u0 version networkx 2.1.patch #24374 | (download) |
sage/src/sage/combinat/permutation.py |
1 1 + 0 - 0 ! |
upgrade networkx to version 2.1 doctest pass but I would not be surprised if some things are broken now. There are a lot of subtle changes in networkx and not all code paths are doctested I believe. Some more comments: * I simplified the SPKG.txt as the changelog has not been mantained for a few years it seems. Also, I am not sure whether the dependencies section is actually useful; numpy and scipy are not hard dependencies. Furthermore, I did not drop src/doc/data as mentioned in the SPKG.txt as I do not see why we should mutilate the source package. * I upgraded copyright headers. When there were no copyright headers at all, I added new ones and seeded them with everyone in the git history of the file. The lists of authors are really lengthy but a lot of people have made little changes to these files. * I dropped NetworkXGraphBackend as it is not used anywhere. There might still be some pickles around that use this? If so, then we should try to upgrade them on unpickling. * The recursive topsort has disappeared it seems. * The balanced tree implementation now raises errors if you feed it invalid heights or degrees. |

u0 fix dont require DISPLAY.patch #22441 | (download) |
sage/src/sage/plot/plot.py |
1 1 + 0 - 0 ! |
don't fail plot.py doctest if display is unset https://stackoverflow.com/questions/37604289/tkinter-tclerror-no-display-name-and-no-display-environment-variable |

u0 reproducible docs.patch #25093 | (download) |
sage/src/doc/common/conf.py |
2 1 + 1 - 0 ! |
generate documentation reproducibly TODO: make this use SOURCE_DATE_EPOCH instead which is set automatically by debhelper https://wiki.debian.org/ReproducibleBuilds/TimestampsProposal#Python |

u0 better sphinx failure modes.patch #25160, 25161 | (download) |
sage/src/sage_setup/docbuild/__init__.py |
24 20 + 4 - 0 ! |
better failure modes for the docbuild - Make non-Exception BaseExceptions like SignalError fail the docbuild early. - Don't strip lines in the custom logger, because it messes with stack traces. - Slight refactoring of the build_many stuff to make it easier to play with. |

u1 fix atrocious symlink logic.patch #22444 | (download) |
sage/src/sage/repl/ipython_kernel/install.py |
10 9 + 1 - 0 ! |
fix atrocious logic in symlink() If the desired result is already in effect, do nothing. Otherwise, proceed with the previous behaviour, but handle permissions errors correctly. We don't actually need any part of this file in Debian, but fixing this (so that post-install tests don't fail) was easier than trying to figure out if removing the file would have other consequences elsewhere. |

u1 looser doctest basename.patch #22445 | (download) |
sage/src/sage/doctest/sources.py |
4 2 + 2 - 0 ! |
make sage.doctest.sources.get_basename work in more situations This lets you specify SAGE_SRC like /path/to/test/dir/../../src/dir, which avoids post-install test failures in sage/doctest/test.py |

u1 scripts dir.patch #22731 | (download) |
sage/src/bin/sage |
12 6 + 6 - 0 ! |
define and use sage_scripts_dir in more places So distros can install them somewhere other than /usr/bin |

u1 ipywidgets repr.patch #https://github.com/jupyter widgets/ipywidgets/pull/1031 | (download) |
sage/src/sage/repl/ipython_kernel/widgets.py |
31 30 + 1 - 0 ! |
money-patch ipywidgets in the way that sage upstream expects Sage upstream patches ipywidgets, but this is still being discussed upstream (see Bug below). In the meantime, we can have Sage monkey-patch ipywidgets at runtime, to prevent other users of ipywidgets being affected. |

u1 version cddlib 094h.patch #25344 | (download) |
sage/src/sage/geometry/polyhedron/backend_cdd.py |
8 6 + 2 - 0 ! |
use cddlib version 094h |

u1 workaround sympow malloc perturb.patch #https://salsa.debian.org/science team/sympow/merge_requests/1, reported to upstream by private email | (download) |
sage/src/sage/lfunctions/sympow.py |
2 1 + 1 - 0 ! |
work around sympow segfault due to malloc_perturb_ |

u1 fix trivial test cases.patch #25094, #25096, #25102, the interpreter bits do not seem necessary anymore | (download) |
sage/src/sage/calculus/calculus.py |
2 1 + 1 - 0 ! |
fix trivial test cases to work Includes cases of: - add more "..." wildcard patterns to the test - changing the value to an exactly-equivalent value. These should probably be forwarded upstream. . Also includes cases of: - update an expected error message to some conceptually identical message |

u2 pari stackwarn.patch #23263 | (download) |
sage/src/sage/doctest/parsing.py |
2 2 + 0 - 0 ! |
ignore warnings of pari increasing the stack size when parsing doctests Since we can't patch PARI to not produce the warnings and we don't want to patch tons of doctests to expect the warnings, we patch the doctest parser to ignore them. |

u2 fix sympow cachedir.patch | (download) |
sage/src/sage/lfunctions/sympow.py |
3 2 + 1 - 0 ! |
set sympow_cachedir to be inside dot_sage Otherwise tests fail in sbuild because sympow can't create HOME/.sympow |

u2 allow override sage local.patch | (download) |
sage/build/make/install |
4 2 + 2 - 0 ! |
allow sage_local to be overridden from outside the makefiles This makes it easier for package managers to create binary distributions. However, keep SAGE_SPKG_INST relative to SAGE_ROOT rather than SAGE_LOCAL since that would be a more intrusive change. |

d0 pari 2.9 revert 24531.patch | (download) |
sage/src/sage/libs/pari/convert_gmp.pyx |
3 0 + 3 - 0 ! |
use pari instead of ratpoints |

d0 pari 2.9 revert 23544.patch | (download) |
sage/src/sage/libs/pari/tests.py |
6 3 + 3 - 0 ! |
fix doctests for pari upgrade |

d0 arb.patch | (download) |
sage/src/module_list.py |
4 2 + 2 - 0 ! |
link with -lflint-arb instead of -larb The name of the arb library is libflint-arb in Debian. |

d0 gsl cblas.patch | (download) |
sage/src/module_list.py |
7 3 + 4 - 0 ! |
hard-code gsl cblas paths and keep gslcblas in gsl_libs Debian does not provide a pkg-config file for libgslcblas, so just hard-code the paths here for Sage . Also, when gslcblas is removed from gsl_libs we currently get this error at the beginning of the doc build: ImportError: /usr/lib/x86_64-linux-gnu/libgsl.so.19: undefined symbol: cblas_ctrmv Does libgsl need to be linked against gslcblas? |

d0 libgap sage.patch | (download) |
sage/src/module_list.py |
14 9 + 5 - 0 ! |
use debian libgap paths Debian installs libGAP headers to non-standard paths to avoid conflict with the main GAP headers. Moreover, many Sage modules use libGAP, so just add these paths to all modules instead of doing module-specific patches. |

d0 maxima.patch | (download) |
sage/src/bin/sage |
2 1 + 1 - 0 ! |
change to work with debians maxima-sage packages |

d0 nauty.patch | (download) |
sage/src/sage/graphs/digraph_generators.py |
2 1 + 1 - 0 ! |
--- |

d0 pari.patch | (download) |
sage/src/sage/interfaces/gp.py |
4 2 + 2 - 0 ! |
--- |

d0 rubiks.patch | (download) |
sage/src/sage/interfaces/rubik.py |
6 3 + 3 - 0 ! |
find rubiks binaries |

d0 singular.patch | (download) |
sage/src/sage/env.py |
2 1 + 1 - 0 ! |
additional changes to work with the debian package of singular We search for a specific SOVERSION of libsingular-Singular, to allow us to runtime-Depend on libsingular4 and not libsingular4-dev. |

d0 disable jsmol.patch | (download) |
sage/src/sage/repl/display/jsmol_iframe.py |
13 13 + 0 - 0 ! |
disable installation of jsmol nbextension |

d0 paths sharedata.patch | (download) |
sage/src/sage/combinat/designs/latin_squares.py |
3 1 + 2 - 0 ! |
hard-code paths to system shared data This could be made generic and forwarded upstream. For example, add another SAGE_SHARE_DATA directory, which for upstream would be the same as SAGE_SHARE and for us would be /usr/share/sagemeth. However, this may not be worth the effort: - upstream already tried it before (as SAGE_DATA) and decide to ditch that - for upstream to accept it again, we'd also have to patch lots of things that are pointless for Debian, such as the scripts in build/pkgs |

d0 paths.patch | (download) |
sage/build/bin/sage-python23 |
4 2 + 2 - 0 ! |
hard-code paths to external system run-time dependencies |

d0 threejs offline paths.patch | (download) |
sage/src/sage/repl/rich_output/backend_ipython.py |
18 6 + 12 - 0 ! |
--- |

d1 install paths.patch # many things in here could be split into an upstreamable patch | (download) |
sage/configure.ac |
3 1 + 2 - 0 ! |
install to debian paths TODO: upstream hard-codes "site-packages" in a bunch of places; these should be fixed to use SAGE_LIB instead and forwarded upstream. Then this patch could be a lot smaller. |

d1 sage cli.patch | (download) |
sage/src/bin/sage |
389 3 + 386 - 0 ! |
patch the sage startup script This patch removes options that do not work for us and removes a check for if we are in a sage source directory. It has only minor modifications from the sage-on-gentoo version. |

d1 sage env.patch | (download) |
sage/README.md |
2 1 + 1 - 0 ! |
patch sage-env and env.py Note that the patched sage-env is only used during the package build and not installed. Instead the file debian/adhoc/sage-env is installed. . The LD_LIBRARY_PATH can probably be forwarded upstream, either way is fine. |

d1 fakeroot.patch | (download) |
sage/configure.ac |
1 0 + 1 - 0 ! |
we are building with fakeroot which makes this check fail. dpkg-buildpackage uses `fakeroot debian/rules clean` so this is needed |

d1 test optional.patch | (download) |
sage/src/sage/doctest/control.py |
18 0 + 18 - 0 ! |
do not look for optional packages when running the testsuite |

d1 multiarch python paths.patch | (download) |
sage/src/sage/misc/sageinspect.py |
8 7 + 1 - 0 ! |
correctly handle debian's python multiarch extension module names We need to strip that part in order to return the correct ".pyx" filename. Otherwise a few post-install tests break. |

d1 doc docs.patch | (download) |
sage/src/sage/misc/copying.py |
2 1 + 1 - 0 ! |
--- |

d1 disable post install tests.patch | (download) |
sage/src/sage/all.py |
8 0 + 8 - 0 ! |
disable some post-install tests We don't need to test these pre-install either because they're already implicitly tested by other parts of the build process. |

d1 remove sage python23.patch | (download) |
sage/src/bin/sage |
4 2 + 2 - 0 ! |
replace sage-python23 by python The command sage-python23 is intended to run sage's own python. In our case we only have the system python. |

df revert minor feature dependent on python patch.patch | (download) |
sage/src/sage/rings/integer.pyx |
10 0 + 10 - 0 ! |
revert sage commit 5dbc699911095dd03f0141a7c1b7ba1c7056ceef This is dependent on a python patch that hasn't landed upstream or in Debian yet. It adds a minor feature used nowhere except the doctests, so just revert it because we know it will break. |

df python_security.patch | (download) |
sage/src/sage/doctest/control.py |
25 13 + 12 - 0 ! |
--- |