Sage 9.3 was released on 2021-05-09. It is available in source and binary form from: * http://www.sagemath.org/download.html Sage (http://www.sagemath.org/) is developed by volunteers and combines hundreds of open source packages. The following 112 people contributed to this release. Of those, 21 made their first contribution to Sage: - Alex J. Best - Alexander Galarraga - Andrey Belgorodski - Anne Schilling - Antonio Rojas - Asier Eiguren [first contribution] - Ben Hutz - Ben Livingston - Brent Baccala - Bruce Westbury - Chris Wuthrich - Daniel Bump - Dave Morris - David Ayotte - David Coudert - David Roe - Dima Pasechnik - Emmanuel Charpentier - Eric Gourgoulhon - Erik Bray - Franco Saliola - François Bissey - Frederic Han - Frédéric Chapoton - Günter Rote - Hoa Nguyen [first contribution] - Isuru Fernando - Ivo Maffei - Jan Engelhardt [first contribution] - Jean-Philippe Labbé - Jeroen Demeyer - Jerry James - Jianping Pan - Johan Rosenkilde - John Bergdall [first contribution] - John Cremona - John Palmieri - Jonathan Kliem - Joshua Campbell - Julian Ritter - Julian Rüth - Karl-Dieter Crisman - Kevin Lui - Kiran Kedlaya - Kwankyu Lee - Linden Disney-Hogg [first contribution] - Luca De Feo - Marc Mezzarobba - Marc Newman [first contribution] - Marco Streng - Marius Gerbershagen - Markus Wageringel - Martin Albrecht - Martin Rejmon [first contribution] - Martin Rubey - Matthias Koeppe - Mauricio Collares [first contribution] - Michael Daub [first contribution] - Michael Jung - Michael Orlitzky - Miguel Marco - Mike Hansen - Mike Zabrocki - Miroslav Kovar [first contribution] - Nathan Dunfield - Nicolò Piazzalunga - Nils Bruin - Nina Klobas [first contribution] - Noa Viner - Pascal Giorgi - Paul Fili - Paul Masson - Paul Zimmermann - Peter Bruin - Peter Story - Ralf Stephan - Raphaël Pagès [first contribution] - Ricardo Buring - Robert Bradshaw - Romain Lebreton - Safa Amasha [first contribution] - Saher Amasha [first contribution] - Salvatore Stella - Samuel Lelièvre - Sandy Scott [first contribution] - Sean Griffin [first contribution] - Sebastian Oehms - Seung Gyu Hyun - Siddharth Bhat [first contribution] - Simon Brandhorst - Simon King - Stefan Wewers - Steven Trogdon - Sébastien Labbé - Thierry Monteil - Thierry Thomas - Timo Kaufmann - Tobias Diez - Tom Grubb [first contribution] - Travis Scholl - Travis Scrimshaw - Tyler Gaona - Victor Santos - Vincent Delecroix - Vincent Neiger - Volker Braun - Volker Weissmann [first contribution] - Wencin Poh - Willie Aboumrad [first contribution] - Xavier Caruso - Yuan Zhou - Zachary Scherr [first contribution] * Release manager: Volker Braun. * We closed 679 tickets in this release. Merged in sage-9.3.beta0: #12529: Samuel Lelièvre: libsingular reduces polynomials incompletely [Reviewed by Kiran Kedlaya] #23726: Marc Mezzarobba: Find roots of polynomials in subrings of the base ring by filtering [Reviewed by Vincent Delecroix] #24483: Vincent Delecroix: complex_field.py complex_number.pyx -> complex_mpfr.pyx [Reviewed by Michael Jung] #25825: Timo Kaufmann, Jeroen Demeyer, Antonio Rojas: Move cremona db to features [Reviewed by Julian Rüth, Matthias Koeppe] #27310: Martin Rubey: provide translation of multiple diff [Reviewed by Frédéric Chapoton] #28019: Matthias Koeppe: If system mpir is found, yasm should not be built [Reviewed by Dima Pasechnik] #28711: Simon King: Fix spkg-install of p_group_cohomology [Reviewed by Dima Pasechnik, Matthias Koeppe] #28974: Joshua Campbell: F-strings (PEP 498) are not correctly handled by Sage's preparser [Reviewed by Markus Wageringel] #29557: Matthias Koeppe, John Palmieri: Add script package _recommended and generate "recommended system packages" info [Reviewed by John Palmieri, Matthias Koeppe] #30349: Matthias Koeppe: Downgrade broken optional packages to experimental for Sage 9.2 [Reviewed by Dima Pasechnik] #30460: Jianping Pan, Wencin Poh, Anne Schilling: Star-Insertion [Reviewed by Travis Scrimshaw] #30472: Frédéric Chapoton: Change remaining all-caps SAGE to Sage [Reviewed by Samuel Lelièvre] #30588: Matthias Koeppe: singular: Remove python dependency, configure --without-python (singular only supports python2) [Reviewed by Dima Pasechnik] #30598: Jonathan Kliem: Define a new data structure for a combinatorial face [Reviewed by Travis Scrimshaw] #30599: Jonathan Kliem: Define a new data structure for a list of combinatorial faces [Reviewed by Travis Scrimshaw] #30636: Frédéric Chapoton: failing doctest with optional tag octave [Reviewed by Sébastien Labbé] #30652: Marc Mezzarobba: Use Arb to evaluate polynomials with integer/rational coefficients at balls [Reviewed by Vincent Delecroix] #30655: Frédéric Chapoton: power series sqrt : one bug [Reviewed by Travis Scrimshaw] #30656: Matthias Koeppe: build/bin/sage-spkg-info: Fix up /bin/sh-ification [Reviewed by Michael Orlitzky] #30665: Jonathan Kliem: Optimize edge iterator for graphs [Reviewed by David Coudert] #30667: Martin Rubey: allow construction of empty signed permutation [Reviewed by Samuel Lelièvre] #30669: Simon Brandhorst: Remove ambiguous conversions for fqf_orthogonal groups [Reviewed by Travis Scrimshaw] #30670: Frédéric Chapoton: full flake8 for lfunctions [Reviewed by Samuel Lelièvre] #30672: Tobias Diez, Matthias Koeppe: Remove `sage/ext` from `sage_include_directories` [Reviewed by Matthias Koeppe, Tobias Diez] #30679: Frédéric Chapoton: fix valuation of Puiseux series [Reviewed by Travis Scrimshaw] #30681: Michael Jung: Fast Pfaffian using Faddeev-LeVerrier [Reviewed by Travis Scrimshaw] #30689: Markus Wageringel: make formatting doctests more lenient (follow-up to #30515) [Reviewed by Antonio Rojas] #30700: Frédéric Chapoton: enhanced maple parser [Reviewed by Marc Mezzarobba] #30703: Dima Pasechnik: Fix libnauty spkg-configure.m4 [Reviewed by Matthias Koeppe] #30705: Matthias Koeppe: GH Actions: local-macos-nohomebrew - use sudo [Reviewed by Dima Pasechnik] #30718: Matthias Koeppe: build/pkgs/pynac/dependencies: Remove giac [Reviewed by John Palmieri] #30720: Dima Pasechnik, Matthias Koeppe: Fix gap_packages for gcc 10 [Reviewed by Matthias Koeppe, Dima Pasechnik] #30729: Matthias Koeppe, John Palmieri: Fix gap_packages for Xcode 12 [Reviewed by Dima Pasechnik] #30730: Volker Braun: More random failures in src/sage/interfaces/psage.py [Reviewed by Dima Pasechnik] #30732: Frédéric Chapoton: combinat : changes about != empty list [Reviewed by Samuel Lelièvre] #30734: Matthias Koeppe: slackware-minimal: system package fix [Reviewed by Dima Pasechnik] #30736: Volker Weissmann, Dima Pasechnik: replacing insecure git:// with secure https:// [Reviewed by Dima Pasechnik, Matthias Koeppe] #30742: Frédéric Chapoton: add giac algo for limits [Reviewed by Frederic Han] #30743: Simon Brandhorst: fix warnings and breaking conditions for neighbor method [Reviewed by Travis Scrimshaw] #30754: Frédéric Chapoton: refresh Cfinite sequences [Reviewed by Samuel Lelièvre] #30756: Frédéric Chapoton: flake8 details in matroids [Reviewed by Samuel Lelièvre] #30759: Frédéric Chapoton: allow double-sided limit from sympy [Reviewed by Sébastien Labbé] #30769: Jonathan Kliem: Unify graph backends [Reviewed by David Coudert] #30771: Matthias Koeppe: Repair self-containedness of the wrapped spkg-install scripts for Python packages [Reviewed by John Palmieri] #30774: Frédéric Chapoton: use iterators inside call of .join for strings [Reviewed by Samuel Lelièvre] #30775: Frédéric Chapoton: flake8 refresh for species/species.py [Reviewed by Samuel Lelièvre] #30779: Matthias Koeppe: Duplicate src/setup.py [Reviewed by Tobias Diez] #30783: Marc Mezzarobba: Sage thinks that I^(2/3) = -1 [Reviewed by Sébastien Labbé] #30785: Andrey Belgorodski: tox.ini: Add gentoo-python3.9 [Reviewed by Matthias Koeppe] #30791: Samuel Lelièvre: Upgrade: OpenSSL 1.1.1h [Reviewed by Matthias Koeppe] #30797: Frédéric Chapoton: Bug in modular sqrt when extend is False and all is True [Reviewed by Travis Scrimshaw] #30798: Frédéric Chapoton: fixing low_degree and degree documentation for symbolic expressions [Reviewed by Travis Scrimshaw] #30799: Michael Jung: Add Folder for Manifold Examples [Reviewed by Travis Scrimshaw] #30802: Matthias Koeppe: build/bin/write-dockerfile.sh: Do not fail with "build/pkgs/SPKG/type: No such file or directory" [Reviewed by Dima Pasechnik] #30803: Matthias Koeppe: Upgrade pybind11 to 2.6.0 to fix "critical incompatibility with Python 3.9.0" [Reviewed by Dima Pasechnik] #30806: Frédéric Chapoton: refresh the ring of Schubert polynomials [Reviewed by Travis Scrimshaw] Merged in sage-9.3.beta1: #19112: Tyler Gaona, Simon Brandhorst: Add a function "isometry" to the quadratic forms package. [Reviewed by Simon Brandhorst] #19120: Miroslav Kovar: efficient algorithm to compute continued fraction of a sum of continued fractions [Reviewed by Vincent Delecroix, Frédéric Chapoton] #23174: Julian Rüth: p and p^n-th roots in function fields [Reviewed by Travis Scrimshaw] #26606: Hoa Nguyen: Bug in latex for power series with greek variable names [Reviewed by Frédéric Chapoton] #28294: Sean Griffin, Frédéric Chapoton: Ordered Set Partition Inversion Statistic [Reviewed by Travis Scrimshaw] #28467: Dave Morris: wrong bound in "Cannot compute primes beyond ..." [Reviewed by Paul Zimmermann, Frédéric Chapoton, Vincent Delecroix, Samuel Lelièvre, Dima Pasechnik] #29246: Peter Bruin: Improve handling of easy cases in lift_to_sl2z() [Reviewed by Frédéric Chapoton] #30141: Alexander Galarraga: Potential good reduction for dynamical systems [Reviewed by Paul Fili] #30305: Julian Rüth: Lifting doesn't work for an augmented valuation over a number field [Reviewed by Stefan Wewers] #30361: Tobias Diez: Add pyright config and linting documentation [Reviewed by Matthias Koeppe, Dima Pasechnik] #30418: Kwankyu Lee: Missing PDF icons in the Sage documentation website [Reviewed by John Palmieri] #30457: Frédéric Chapoton: fix typos in occurrence, occurred, occurring [Reviewed by Samuel Lelièvre] #30458: Jonathan Kliem: Outsource some functions in bit_vector_operations.cc [Reviewed by Travis Scrimshaw, Samuel Lelièvre] #30462: Joshua Campbell: Dark theme for Three.js viewer [Reviewed by Paul Masson] #30466: Travis Scrimshaw: unicode_art for elements of AffineGroup [Reviewed by Matthias Koeppe] #30471: Frédéric Chapoton: Change "can not" to "cannot" in many places [Reviewed by Samuel Lelièvre] #30508: Martin Rubey: remove obsolete lazy imports [Reviewed by Marc Mezzarobba] #30530: Frédéric Chapoton: some flake8 cleanup in elliptic curve [Reviewed by John Cremona] #30542: Frédéric Chapoton: various flake8 fixes [Reviewed by Travis Scrimshaw] #30545: Frédéric Chapoton: A 1-dimensional polytope has no edge [Reviewed by Samuel Lelièvre] #30552: Markus Wageringel: display options for matrices [Reviewed by Vincent Delecroix] #30553: Frédéric Chapoton: some cleanup (flake8) in poset files [Reviewed by Travis Scrimshaw] #30555: Alexander Galarraga: Incorrect gt() and lt() functions in Berkovich space [Reviewed by Ben Hutz] #30558: Mike Zabrocki: Implement the conjugate of a set partition [Reviewed by Anne Schilling, Frédéric Chapoton, Samuel Lelièvre] #30565: Matthias Koeppe: build/bin/sage-guess-package-system: Fix up /bin/sh-ification [Reviewed by Michael Orlitzky] #30591: Frédéric Chapoton: some flake8 cleanup in plane conics [Reviewed by Travis Scrimshaw] #30615: Frédéric Chapoton: flake8 and other details in posets.py [Reviewed by Travis Scrimshaw] #30625: Dima Pasechnik: upgrade GMP to version 6.2.0 [Reviewed by Isuru Fernando] #30626: Matthias Koeppe: Fix build/pkgs/libhomfly/distros/debian.txt [Reviewed by Dima Pasechnik] #30630: Martin Rubey: findstat error handling [Reviewed by Sébastien Labbé] #30646: Matthias Koeppe: sage.knots, sage.game_theory: Change 'optional - cbc' to 'optional - sage_numerical_backends_coin` [Reviewed by David Coudert] #30673: Tobias Diez: Add compiled cython and virtual environments in gitignore [Reviewed by Matthias Koeppe] #30684: Marc Mezzarobba: make "a in NN" work in more cases [Reviewed by Travis Scrimshaw] #30697: Linden Disney-Hogg: Derived subalgebra of semisimple Lie algebra [Reviewed by Travis Scrimshaw] #30707: Tobias Diez: Fix indent in Cython file [Reviewed by Matthias Koeppe] #30708: Tobias Diez: Remove Python 2 code in autogenerated interpreters [Reviewed by Matthias Koeppe] #30712: Tobias Diez: Gracefully fail if pip is not correctly installed [Reviewed by Matthias Koeppe] #30715: Tobias Diez: Remove a few .all imports [Reviewed by Matthias Koeppe] #30739: Tobias Diez: Remove a few more .all imports [Reviewed by Matthias Koeppe] #30753: David Coudert, Jonathan Kliem: Further improvements in method subgraph [Reviewed by David Coudert] #30788: Frédéric Chapoton: flake8 for new_kschur [Reviewed by Travis Scrimshaw] #30789: Frédéric Chapoton: refresh cyclotomic coefficients [Reviewed by Vincent Delecroix] #30790: Frédéric Chapoton: a few details in misc/misc.py [Reviewed by Travis Scrimshaw] #30792: John Palmieri: Homebrew: add $HOMEBREWPREFIX/opt/texinfo/bin to PATH [Reviewed by Matthias Koeppe, Dima Pasechnik] #30807: Frédéric Chapoton: refresh partition_algebra.py [Reviewed by Travis Scrimshaw] #30808: Frédéric Chapoton: refresh symmetric group algebra [Reviewed by Travis Scrimshaw] #30811: Xavier Caruso: Speed up truncation of polynomials [Reviewed by Frédéric Chapoton] #30815: Frédéric Chapoton: better fricas and giac conversion for symbolic matrices [Reviewed by Martin Rubey] #30820: Frédéric Chapoton: some CI details [Reviewed by Dima Pasechnik] #30821: Frédéric Chapoton: some typos found using "sage --tox" [Reviewed by Matthias Koeppe] #30827: David Coudert: typos found with sage --tox in graphs (1) [Reviewed by Frédéric Chapoton] #30828: David Coudert: typos found with sage --tox in graphs (2) [Reviewed by Frédéric Chapoton] #30829: David Coudert: typos found with sage --tox in graphs (3) [Reviewed by Frédéric Chapoton] #30834: Matthias Koeppe: build/pkgs/sage_sws2rst: Fix metadata [Reviewed by Frédéric Chapoton] #30836: Frédéric Chapoton: minor flake8 changes in typeset/ and games/ [Reviewed by Travis Scrimshaw] #30838: John Palmieri: Generators for homology of simplicial complexes [Reviewed by Travis Scrimshaw] #30839: Isuru Fernando: Add more conda.txt [Reviewed by Matthias Koeppe] #30841: Matthias Koeppe: bootstrap: Do not depend on sage-env, sage-env-config [Reviewed by Dima Pasechnik] Merged in sage-9.3.beta2: #14509: Hoa Nguyen: Fix LaTeX of free algebras (and repr_lincomb) [Reviewed by Frédéric Chapoton, Travis Scrimshaw] #16804: Frédéric Chapoton: points() has problems with some lists of complexes containing real (i.e. imag(x)==0) values. [Reviewed by Vincent Delecroix, Kwankyu Lee] #18036: Marc Mezzarobba: I.parent() should not be the symbolic ring [Reviewed by Vincent Delecroix] #25488: Brent Baccala: Improved Kash interface [Reviewed by Dima Pasechnik] #29630: Thierry Thomas, Dima Pasechnik: spkg-configure.m4 for libhomfly [Reviewed by Matthias Koeppe] #29719: Dima Pasechnik, Matthias Koeppe: upgrade to flint 2.6.3 [Reviewed by Matthias Koeppe, Dima Pasechnik] #29951: Matthias Koeppe: src/bin/sage-env: Make SAGE_ROOT and SAGE_LOCAL optional [Reviewed by Dima Pasechnik, Jerry James] #30040: Jonathan Kliem: Improve face iterator for simple/simplicial polytopes [Reviewed by Travis Scrimshaw] #30404: Tobias Diez: Add pyright and pycodestyle checks as Github actions [Reviewed by Matthias Koeppe] #30524: Jonathan Kliem: Remove `maybe_newfaces` in combinatorial polyhedron [Reviewed by Travis Scrimshaw] #30611: Matthias Koeppe: Upgrade various Python packages for Sage 9.3 [Reviewed by François Bissey] #30627: Matthias Koeppe: Rename build/bin/sage-system-python to sage-bootstrap-python [Reviewed by Sébastien Labbé] #30633: Dima Pasechnik: sympow gives "RuntimeError: failed to compute analytic rank" doctest failures [Reviewed by Sébastien Labbé] #30648: Sébastien Labbé: sage --package download is broken [Reviewed by Matthias Koeppe] #30704: Matthias Koeppe, Jonathan Kliem: Upgrade to Normaliz 3.8.9 and PyNormaliz 2.13 [Reviewed by Jonathan Kliem, Matthias Koeppe] #30706: Tobias Diez, Matthias Koeppe: Make sage.env.cython_aliases more flexible regarding what pkgconfig files for BLAS are required [Reviewed by Matthias Koeppe, Dima Pasechnik] #30709: Tobias Diez: Extract cython config to new module [Reviewed by Matthias Koeppe] #30719: Matthias Koeppe: Add build/pkgs/SPKG/install-requires.txt for all Python packages, remove some unneeded packages [Reviewed by Dima Pasechnik] #30724: Matthias Koeppe: src/bin/sage-env, src/bin/sage-env-config.in: Remove PYTHON_FOR_VENV [Reviewed by Dima Pasechnik] #30733: Matthias Koeppe: GH Actions: Remove use of deprecated set-env command [Reviewed by Tobias Diez] #30744: Travis Scrimshaw: Symplectic derivation Lie algebra [Reviewed by Frédéric Chapoton] #30765: Frédéric Chapoton: Adapt to deprecation of seeding based on hashing in Python 3.9 [Reviewed by Dima Pasechnik] #30776: Jonathan Kliem: Implement an improved subgraph test for graph backends [Reviewed by David Coudert] #30780: Matthias Koeppe: sage_setup: Separate installing and cleaning [Reviewed by Dima Pasechnik] #30784: Matthias Koeppe: sage.matrix: Resolve circular imports without using __init__.py [Reviewed by François Bissey] #30804: Michael Jung: Add Spheres smoothly embedded in Euclidean Space to Manifold Catalog [Reviewed by Eric Gourgoulhon, Travis Scrimshaw] #30812: Frédéric Chapoton: some details in the det method for general matrices [Reviewed by Travis Scrimshaw] #30830: Michael Jung: Subintervals of OpenInterval and UniqueRepresentation [Reviewed by Travis Scrimshaw] #30840: Frédéric Chapoton: small improvement in Hasse diagram [Reviewed by Travis Scrimshaw] #30843: Simon Brandhorst: AbelianGroup_gap quotient group [Reviewed by Travis Scrimshaw] #30844: Frédéric Chapoton: better maple conversion for symbolic matrices [Reviewed by Marc Mezzarobba] #30849: Vincent Delecroix: Make gcd/lcm interact better with pari and gmpy2 [Reviewed by Marc Mezzarobba] #30851: Frédéric Chapoton: single-valued multizeta [Reviewed by Travis Scrimshaw] #30852: Thierry Monteil: let sagelib and sage_sws2rst not depend on six [Reviewed by Frédéric Chapoton] #30856: Frédéric Chapoton: get rid of EMBEDDED_MODE from plot.plot [Reviewed by Dima Pasechnik] #30858: David Coudert: add giac to build/pkgs/sagelib/dependencies [Reviewed by Dima Pasechnik] #30864: Xavier Caruso: Comparison of power series [Reviewed by Frédéric Chapoton] #30866: Dima Pasechnik: remove broken --upgrade option from sage [Reviewed by Matthias Koeppe] #30867: Matthias Koeppe: Remove mac app [Reviewed by Dima Pasechnik] #30869: Vincent Delecroix: Some computation hangs in Multizeta [Reviewed by Frédéric Chapoton] #30871: Frédéric Chapoton: symmetric functions are commutative [Reviewed by Travis Scrimshaw] #30873: Antonio Rojas: Fix test failures in distro packages after #25825 [Reviewed by Matthias Koeppe] #30874: Frédéric Chapoton: update planarity [Reviewed by Dima Pasechnik] #30878: Frédéric Chapoton: some flake8 details in backend normaliz [Reviewed by Jonathan Kliem] #30880: Frédéric Chapoton: flake8 for multi_polynomial_ideal.py [Reviewed by Travis Scrimshaw] #30881: Frédéric Chapoton: remove the unused file group_homset [Reviewed by Travis Scrimshaw] #30883: Isuru Fernando, Samuel Lelièvre: Update instructions for conda to use miniforge [Reviewed by Dima Pasechnik, Isuru Fernando] #30889: Frédéric Chapoton: remove CombinatorialAlgebra [Reviewed by Travis Scrimshaw] #30899: David Coudert, Dima Pasechnik: igraph, python-igraph: Update to 0.8.3 [Reviewed by Dima Pasechnik, Matthias Koeppe] #30902: Frédéric Chapoton: let NCSF know that it is cocommutative [Reviewed by Travis Scrimshaw] #30904: Frédéric Chapoton: changes in shuffle_product [Reviewed by Travis Scrimshaw] #30907: Frédéric Chapoton: get rid of CombinatorialClass in parking [Reviewed by Travis Scrimshaw] #30908: Frédéric Chapoton: get rid of CombinatorialClass in combination.py [Reviewed by Travis Scrimshaw] #30909: Frédéric Chapoton: doc tweaks in OEIS [Reviewed by Thierry Monteil] #30918: Frédéric Chapoton: one more stable doctest in mutable poset [Reviewed by Travis Scrimshaw] #30919: Frédéric Chapoton: small change in one dict for preparser for python 3.9 [Reviewed by Markus Wageringel] #30920: Frédéric Chapoton: refresh affine crystal [Reviewed by Travis Scrimshaw] #30923: Matthias Koeppe: tox.ini: Add environments local-sudo-ubuntu-standard, etc. [Reviewed by Tobias Diez, Dima Pasechnik] #30927: Peter Bruin: Frobenius endomorphisms of p-adic fields pickle incorrectly [Reviewed by Travis Scrimshaw] #30932: Frédéric Chapoton: some details in global options [Reviewed by Travis Scrimshaw] #30937: Tobias Diez: Improve error message for jmol [Reviewed by Travis Scrimshaw] Merged in sage-9.3.beta3: #9407: Michael Daub, John Bergdall, Chris Wuthrich, Alex J. Best: fixed fields for dirichlet characters and conductors and dirichlet characters for abelian fields [Reviewed by Marco Streng, Frédéric Chapoton] #22731: Matthias Koeppe: Replace "$SAGE_LOCAL/bin" by more specific variables to make Sage easier to package, use in venvs [Reviewed by Tobias Diez, Dima Pasechnik] #27921: Matthias Koeppe: Script package for checking presence of system libxml2 (polymake and igraph prerequisite) [Reviewed by Dima Pasechnik, David Coudert] #28745: Isuru Fernando: Add SAGE_ROOT/environment.yml for "conda env create -f". [Reviewed by Matthias Koeppe] #29286: Erik Bray: sage -package create: Fix argument handling [Reviewed by Matthias Koeppe] #30015: Jean-Philippe Labbé: Schlegel projection breaks convexity [Reviewed by Jonathan Kliem] #30346: Sebastian Oehms: Exception for the unknot in Homfly-PT polynomial [Reviewed by Samuel Lelièvre] #30432: Noa Viner: Slice Doesn't Work For Unramified or 2-Step Padic Extensions [Reviewed by Julian Rüth] #30529: Jonathan Kliem: Use reference instead of pointer to simplify code [Reviewed by Travis Scrimshaw] #30559: Matthias Koeppe: Refine python3's SAGE_SPKG_DEPCHECK: Remove sqlite [Reviewed by John Palmieri] #30579: Matthias Koeppe: Clean up sage_setup.library_order [Reviewed by Dima Pasechnik] #30580: Matthias Koeppe: sage_setup: Remove import-time dependency (`setup_requires`) on `pkgconfig`, `numpy` [Reviewed by Dima Pasechnik] #30624: Samuel Lelièvre, Matthias Koeppe: Improve wording and formatting of configure's recommendation message [Reviewed by Matthias Koeppe, Sébastien Labbé] #30745: Dima Pasechnik: Allow using arb, flint and ntl from Homebrew [Reviewed by John Palmieri] #30747: Matthias Koeppe: Deprecate sage.misc.package functions standard_packages, optional_packages, experimental_packages [Reviewed by John Palmieri] #30752: Dima Pasechnik, Matthias Koeppe: switch the default mp library to gmp [Reviewed by Matthias Koeppe, Dima Pasechnik] #30777: Jonathan Kliem: Improve deleting of edges of graphs [Reviewed by David Coudert] #30842: Simon Brandhorst: Genus representatives [Reviewed by Travis Scrimshaw] #30850: Thierry Monteil: No Future [Reviewed by Matthias Koeppe] #30859: Tobias Diez: Add more debian system package information, including packages without spkg-configure.m4 [Reviewed by Matthias Koeppe] #30865: Matthias Koeppe: sage_bootstrap: Update/extend "sage -package", fix "make download" [Reviewed by Sébastien Labbé] #30891: David Roe, Jonathan Kliem: Normaliz cone from precomputed data has lattice messed up [Reviewed by Matthias Koeppe] #30895: Matthias Koeppe: Developers' guide: Update "Packaging Third-Party Code" regarding upstream_url [Reviewed by Sébastien Labbé] #30903: Matthias Koeppe: Fix broken symlink to documentation in the Sage jupyter kernelspec [Reviewed by Dima Pasechnik, Erik Bray] #30910: Tobias Diez: GH Actions: Fixes for WSL workflow [Reviewed by Matthias Koeppe] #30915: Paul Masson, Joshua Campbell: Three.js: Upgrade to r122 [Reviewed by Joshua Campbell, Paul Masson, Matthias Koeppe] #30921: Michael Orlitzky: Fix verbose "epsilon" output in polynomial small roots [Reviewed by Dave Morris] #30925: Frédéric Chapoton: Multizeta does not copy its argument [Reviewed by Dima Pasechnik] #30928: Joshua Campbell: Backslash line continuation broken when defining a callable symbolic expression [Reviewed by Steven Trogdon, Eric Gourgoulhon] #30929: Matthias Koeppe: GH Actions: Update macos test environments [Reviewed by Jonathan Kliem] #30931: Frédéric Chapoton: refresh yang baxter graph file [Reviewed by Travis Scrimshaw, Franco Saliola] #30935: Tobias Diez: Fix IP is none error in doctests [Reviewed by Matthias Koeppe] #30939: Frédéric Chapoton: is_primitive and is_grouplike for bialgebra elements [Reviewed by Travis Scrimshaw] #30941: Frédéric Chapoton: let monoid algebras be bialgebras [Reviewed by Travis Scrimshaw] #30946: Jean-Philippe Labbé: Add "minimal=True" option to affine_hull_projection [Reviewed by Jonathan Kliem] #30951: Matthias Koeppe: tox.ini, build/bin/write-dockerfile.sh: Simplify by using new options of "sage -package list" [Reviewed by Sébastien Labbé] #30954: Jonathan Kliem: Implement a proper equality check for polyhedron representation objects [Reviewed by Jean-Philippe Labbé] #30958: Jonathan Kliem: Remove C99 syntax in data_structures/bitset_intrinsics.h [Reviewed by David Coudert] #30959: Frédéric Chapoton: almost get rid of "_multiply_basis" [Reviewed by Travis Scrimshaw] #30960: Matthias Koeppe: Update/fix top-level makefile target fast-rebuild-clean (used in Docker build) [Reviewed by Frédéric Chapoton] #30961: Marc Mezzarobba: Fix valid input types for NumberField element constructor [Reviewed by Samuel Lelièvre] #30963: Frédéric Chapoton: remove CombinatorialClass in graph_path.py [Reviewed by Travis Scrimshaw] #30965: Frédéric Chapoton: fix precision in Padé method of power series [Reviewed by Samuel Lelièvre] #30975: Antonio Rojas: Silence packaging 20.5 deprecation warnings [Reviewed by Matthias Koeppe] #30976: Dave Morris: incidence_structures.py tries to import 'warn' from the wrong module [Reviewed by Matthias Koeppe] #30986: David Coudert: add module tree_decomposition.pyx [Reviewed by Matthias Koeppe] #30990: Frédéric Chapoton: flake8 details in parent.pyx [Reviewed by Samuel Lelièvre] #30995: Matthias Koeppe: Repair setting of SAGE_NUM_THREADS during build [Reviewed by Dima Pasechnik] #31012: David Coudert: Adapt RandomChordalGraph to deprecation of sampling from sets in Python 3.9 [Reviewed by Frédéric Chapoton] Merged in sage-9.3.beta4: #10653: Peter Story, Dave Morris: Formatting error in doc for dynamic classes [Reviewed by Dave Morris, Frédéric Chapoton, Samuel Lelièvre] #18406: Samuel Lelièvre: Fix times in graphics doc [Reviewed by Karl-Dieter Crisman] #28623: Matthias Koeppe, Dima Pasechnik: Upgrade Arb to 2.18.1 [Reviewed by Dima Pasechnik, Matthias Koeppe] #28712: Dave Morris: clarify acceptable input to prime_range [Reviewed by Kiran Kedlaya] #29314: Dima Pasechnik: update GAP to version 4.11, libsemigroup to 1.0.9 [Reviewed by Matthias Koeppe, Tobias Diez] #29850: Matthias Koeppe: Install sage-env-config as part of sage_conf [Reviewed by Dima Pasechnik] #29852: Matthias Koeppe: sage: Determine SAGE_LOCAL, SAGE_ROOT via sage-config if it exists [Reviewed by Dima Pasechnik, François Bissey] #30013: Matthias Koeppe: src/bin/sage-env: Make sure $SAGE_VENV/bin is at the beginning of the PATH [Reviewed by Tobias Diez, Dima Pasechnik] #30154: Matthias Koeppe: GH Actions: cygwin: Use incremental archives for the sage-local artifact [Reviewed by Jonathan Kliem] #30315: Matthias Koeppe: Switch jsmol to jupyter-jsmol [Reviewed by Joshua Campbell] #30375: Jonathan Kliem: Gather and clean up compiler flags [Reviewed by Matthias Koeppe] #30539: Nicolò Piazzalunga: More Void Linux spkg's [Reviewed by Jonathan Kliem] #30549: Jonathan Kliem: Remove all the bitset access from cython files in combinatorial polyhedron [Reviewed by Travis Scrimshaw] #30587: Jonathan Kliem, Matthias Koeppe: Remove import of 'ppl' at startup using lazy_import with feature [Reviewed by Matthias Koeppe, Jonathan Kliem] #30612: Joshua Campbell: Set title of HTML page with Three.js viewer [Reviewed by Eric Gourgoulhon] #30613: Joshua Campbell: Fix clipping issue for plots with small/large extents in Three.js [Reviewed by Eric Gourgoulhon] #30619: Jan Engelhardt, Matthias Koeppe: tox.ini: Add opensuse, add/update opensuse.txt across build/pkgs/ [Reviewed by Matthias Koeppe, Jonathan Kliem, Dima Pasechnik] #30628: Joshua Campbell: Change font of axis labels in Three.js [Reviewed by Eric Gourgoulhon] #30822: Frédéric Chapoton: some typos inside combinat, found by sage --tox [Reviewed by Travis Scrimshaw] #30823: Frédéric Chapoton: some typos in elliptic curves and flake8 for BSD.py [Reviewed by John Cremona] #30857: Marc Mezzarobba: additional compatibility wrappers after #24483 [Reviewed by Vincent Delecroix] #30890: Dima Pasechnik: distros info for tox [Reviewed by Matthias Koeppe] #30900: Matthias Koeppe: Remove last traces of zope_interface [Reviewed by John Palmieri] #30917: Frédéric Chapoton: refresh the Weyl character ring [Reviewed by Travis Scrimshaw] #30943: Frédéric Chapoton: refresh fully commutative elements [Reviewed by Travis Scrimshaw] #30947: Matthias Koeppe: src/doc/bootstrap: Simplify by using new options of "sage -package list" [Reviewed by Sébastien Labbé] #30952: Frédéric Chapoton: conversions of posets to macaulay2 [Reviewed by Travis Scrimshaw] #30957: Matthias Koeppe: tox.ini, GH Actions: Add ubuntu-hirsute, linuxmint-20*, fedora-34; update debian-bullseye packages [Reviewed by Jonathan Kliem] #30962: Frédéric Chapoton: use Parent in shuffle [Reviewed by Travis Scrimshaw] #30966: Frédéric Chapoton: another wave of cleanup for pbori [Reviewed by Samuel Lelièvre] #30967: Frédéric Chapoton: partial flake8 cleanup for tableau [Reviewed by Travis Scrimshaw] #30968: Matthias Koeppe: bootstrap: Simplify by using new options of "sage -package list" [Reviewed by Sébastien Labbé] #30970: Kwankyu Lee: Graphic function point() broken [Reviewed by Eric Gourgoulhon] #30973: Frédéric Chapoton: partial flake8 cleanup for misc/ [Reviewed by David Coudert, Samuel Lelièvre] #30974: Matthias Koeppe: sage --package create PACKAGE --pypi [Reviewed by Sébastien Labbé] #30978: Matthias Koeppe: perl_cpan_polymake_prereq: Fix up install script [Reviewed by Jonathan Kliem] #30985: Antonio Rojas: Update sympy to 1.7 [Reviewed by Isuru Fernando] #30987: Dima Pasechnik: fix lcalc on gcc-10 [Reviewed by Travis Scrimshaw] #30988: Frédéric Chapoton: small enhancement of MZV [Reviewed by Travis Scrimshaw] #30994: Vincent Delecroix: Improvements to multiple zeta values [Reviewed by Frédéric Chapoton] #30996: Frédéric Chapoton: adding an option for the opposite product in free Zinbiel algebras [Reviewed by Travis Scrimshaw] #31002: Tobias Diez, Matthias Koeppe: Specify bdist temp folder for WSL compatibility [Reviewed by Matthias Koeppe, Tobias Diez] #31011: Samuel Lelièvre: Update docs in src/sage/matrix/matrix0.pyx to use \dots instead of \hdots [Reviewed by Frédéric Chapoton] #31014: Frédéric Chapoton: flake8 for combinatorial Hopf algebras [Reviewed by Samuel Lelièvre] #31015: Volker Braun: Cysignals testsuite fails due to FORTIFY_SOURCE [Reviewed by Matthias Koeppe] #31018: Antonio Rojas: Prevent setting an empty CC/CXX [Reviewed by Matthias Koeppe] #31020: Matthias Koeppe: build/make/Makefile.in: Fix SAGE_CHECK logic, conditionalize sagetex dependencies on SAGE_CHECK [Reviewed by Dima Pasechnik] #31022: Matthias Koeppe: symmetrica: Add xz as dependency [Reviewed by Michael Orlitzky] #31023: Frédéric Chapoton: 2 internet doctests failing in findstat.py and oeis.py [Reviewed by Martin Rubey] #31026: David Coudert: sparse6 encoding for canonical graphs returns encoding of original graph [Reviewed by Thierry Monteil] #31030: David Coudert: Adapt shuffle to deprecation in Python 3.9 [Reviewed by Travis Scrimshaw] #31032: François Bissey: some raw string for pdf doc building in sage-on-gentoo [Reviewed by Frédéric Chapoton] #31037: François Bissey: Install tests in sage/tests/books [Reviewed by Matthias Koeppe] Merged in sage-9.3.beta5: #11590: Michael Orlitzky: Integrating the sgn() function can produce incorrect results [Reviewed by Frédéric Chapoton] #27122: Jonathan Kliem: Compile with -march=native [Reviewed by Matthias Koeppe] #28746: Isuru Fernando, Matthias Koeppe: Developer's Guide: Add instructions for sagelib development in a conda environment [Reviewed by Matthias Koeppe, Tobias Diez] #29031: Travis Scrimshaw: Actions cannot be pickled [Reviewed by Sébastien Labbé] #29364: Dave Morris: Bug in S-class groups of number fields [Reviewed by Frédéric Chapoton] #29853: Travis Scrimshaw: Do not go through Python for gf2e dense matrices in word_to_poly [Reviewed by Frédéric Chapoton] #29973: Dave Morris: Make sets doctests ready for random seeds [Reviewed by Jonathan Kliem] #30199: Marc Newman: Prime degree isogeny (di)graphs of elliptic curves [Reviewed by Luca De Feo] #30343: Ivo Maffei: Graphs: point-graph of generalised polygons [Reviewed by Dima Pasechnik] #30356: Ivo Maffei: Graphs: grouped sporadic distance-regular graphs in a function [Reviewed by Dima Pasechnik] #30750: Bruce Westbury: Implementation of semistandard tableaux as pathtableaux [Reviewed by Travis Scrimshaw] #30764: Frédéric Chapoton: Adapt to float factorial deprecation in Python 3.9 [Reviewed by Travis Scrimshaw] #30870: Bruce Westbury: Add path_tableaux/frieze module to documentation [Reviewed by Travis Scrimshaw] #30901: Tobias Diez: sage.env._get_shared_lib_filename: Fix for MULTIARCH [Reviewed by Matthias Koeppe] #30964: Frédéric Chapoton: partial flake8 cleanup for repl/ [Reviewed by Samuel Lelièvre] #30971: Antonio Rojas: Update to pillow 8.0.1 [Reviewed by Matthias Koeppe, Dima Pasechnik] #30979: Matthias Koeppe: Remove duplication of options handled in src/bin/sage and build/bin/sage-site [Reviewed by Jonathan Kliem] #30989: Frédéric Chapoton: add some typing information to interval-posets [Reviewed by Tobias Diez] #30993: David Coudert: add pre processing for treewidth [Reviewed by Frédéric Chapoton] #31001: Travis Scrimshaw: Some bugs concerning the trivial knot diagram [Reviewed by Sebastian Oehms] #31025: Martin Albrecht: FPLLL 5.4.0 and FPyLLL 0.5.4 [Reviewed by Matthias Koeppe] #31028: Frédéric Chapoton: flake8 for two files in modular/hecke [Reviewed by Travis Scrimshaw] #31034: Matthias Koeppe: Fix sage -package download --allow-upstream, add option --on-error=warn, add filtering to sage -package upload [Reviewed by Jonathan Kliem, Volker Braun] #31038: Jean-Philippe Labbé, Jonathan Kliem: Improve the zonotope construction [Reviewed by Jonathan Kliem, Frédéric Chapoton] #31039: Frédéric Chapoton: refresh the Knutson-Tao puzzles file [Reviewed by Travis Scrimshaw] #31042: Matthias Koeppe: build/pkgs/_recommended: Remove duplication of the pandoc system package in debian, homebrew [Reviewed by Dima Pasechnik] #31050: John Palmieri: Upgrade: wheel 0.36.2 [Reviewed by Matthias Koeppe] #31051: David Coudert, Michael Orlitzky: Fix gp2c spkg-configure to let configure succeed on Fedora 32 [Reviewed by Dima Pasechnik] #31056: Antonio Rojas: Guard against an empty SAGE_LOCAL [Reviewed by Matthias Koeppe, Samuel Lelièvre] #31057: Frédéric Chapoton: more cleanup in pbori [Reviewed by Travis Scrimshaw] #31058: Matthias Koeppe: src/bin/sage-venv-config: Do not fail if sage_conf is not available [Reviewed by Antonio Rojas] #31059: Frédéric Chapoton: refresh dirichlet.py [Reviewed by Thierry Monteil] #31060: Frédéric Chapoton: some details in fraction field of Fp[T] [Reviewed by Travis Scrimshaw] #31061: Antonio Rojas: Upgrade: GLPK 5.0 [Reviewed by François Bissey] #31063: Antonio Rojas: Fix a test failure with readline 8.1 [Reviewed by Matthias Koeppe] #31066: Frédéric Chapoton: a few typos [Reviewed by Sébastien Labbé] #31067: Frédéric Chapoton: another bunch of typos [Reviewed by Samuel Lelièvre] #31068: Frédéric Chapoton: some typos in rings/ and schemes/ [Reviewed by Samuel Lelièvre] #31070: Frédéric Chapoton: add some type hints in parking functions [Reviewed by Travis Scrimshaw] #31072: Peter Bruin: Allow conversion of Sequence into function fields [Reviewed by Frédéric Chapoton] #31073: Frédéric Chapoton: typos in graphs, matroids, logic [Reviewed by Samuel Lelièvre] #31079: Frédéric Chapoton, Travis Scrimshaw: refresh Symmetric Group representations [Reviewed by Travis Scrimshaw, Frédéric Chapoton] #31080: Tobias Diez: Replace startup exception by warning [Reviewed by Matthias Koeppe] #31081: Frédéric Chapoton: get rid of _multiply [Reviewed by Travis Scrimshaw] #31082: Thierry Monteil: Upgrade: OpenSSL 1.1.1i [Reviewed by Matthias Koeppe] #31085: Frédéric Chapoton: fix conversion of sign function to fricas [Reviewed by Martin Rubey] #31089: Dave Morris: detect_poles puts a gap in function plots (even if there are no poles) [Reviewed by Frédéric Chapoton] #31095: Matthias Koeppe: tox.ini, GH Actions: Remove ubuntu-eoan [Reviewed by Jonathan Kliem] #31096: Frédéric Chapoton: some flake8 cleanup in abvar/ [Reviewed by David Coudert] #31106: Frédéric Chapoton: refresh combinat.py [Reviewed by David Coudert] Merged in sage-9.3.beta6: #2567: Mike Hansen, Frédéric Chapoton: import MPFR_PREC_MAX from mpfr.h instead of hard coding it to the 32 bit limit [Reviewed by Paul Zimmermann, François Bissey] #22179: Matthias Koeppe: Improve SAGE_FAT_BINARY for openblas [Reviewed by Jonathan Kliem] #25191: Martin Albrecht: Add flag for returning LLL transformation matrix [Reviewed by Dima Pasechnik] #25905: Martin Rubey: Bug in FriCAS integration [Reviewed by Frédéric Chapoton] #29655: Matthias Koeppe: Improve build/pkgs/*/SPKG.rst [Reviewed by Dima Pasechnik] #29913: Matthias Koeppe: Upgrade OpenBLAS 0.3.13 [Reviewed by Jonathan Kliem] #29954: Jonathan Kliem: Unstable plotting [Reviewed by Dave Morris] #30386: Ivo Maffei: Graphs: added distance-regular classical parameters graphs [Reviewed by Dima Pasechnik] #30414: Ivo Maffei: Graphs: grouped constructions of pseudo partition graphs [Reviewed by Dima Pasechnik] #30441: Ivo Maffei: Graphs: added near polygons distance-regular graphs [Reviewed by Dima Pasechnik] #30445: Jonathan Kliem: Merge duplications in edges, ridges and f-vector of combinatorial polyhedron [Reviewed by Travis Scrimshaw] #30476: Matthias Koeppe: Doc: Add instructions on how to run the SageMath jupyter kernel in a system jupyter notebook or jupyterlab [Reviewed by François Bissey] #30622: Matthias Koeppe: build/bin/sage-spkg: Handle an optional argument to set the installation tree (default SAGE_LOCAL) [Reviewed by Jonathan Kliem] #30940: Matthias Koeppe: src/bin/sage-list-packages: Make it work if SAGE_ROOT is not available [Reviewed by Tobias Diez, Jonathan Kliem] #30955: Matthias Koeppe: Change remaining SPKG.txt to SPKG.rst, delete remaining SPKG changelogs [Reviewed by Sébastien Labbé, Frédéric Chapoton] #31004: Tobias Diez, Matthias Koeppe: src/tox.ini: Rename pycodestyle to pycodestyle-minimal, add full pycodestyle as recommendation [Reviewed by Matthias Koeppe, Tobias Diez] #31009: Matthias Koeppe: build/pkgs/python3: Remove libpng from dependencies, SAGE_SPKG_DEPCHECK [Reviewed by Isuru Fernando] #31029: Vincent Delecroix: Upgrade: cypari2 2.1.2 [Reviewed by Matthias Koeppe, John Palmieri] #31040: Peter Bruin: roots() method of polynomials over QQ misses roots in p-adic extension fields [Reviewed by Marc Mezzarobba] #31043: Joshua Campbell: Preparsing aborts when first line is a comment [Reviewed by Samuel Lelièvre] #31052: Mauricio Collares: MR48: Cast terminate_async argument to float in doctest [Reviewed by Frédéric Chapoton, Dima Pasechnik] #31053: Mauricio Collares: MR49: Register sorted dict pprinter earlier in doctest forker [Reviewed by Dima Pasechnik] #31054: Martin Rubey: 2 internet doctests failing in findstat.py [Reviewed by Sébastien Labbé] #31074: Tobias Diez: Explicitly define variables in env.py [Reviewed by Matthias Koeppe] #31094: Matthias Koeppe: openssl: Make build more robust by clearing some environment variables [Reviewed by Jonathan Kliem] #31107: Frédéric Chapoton: using libgap for word problem in abelian group [Reviewed by Samuel Lelièvre] #31112: Frédéric Chapoton, Travis Scrimshaw: refresh the eta products file [Reviewed by Travis Scrimshaw, Frédéric Chapoton] #31113: Frédéric Chapoton: refresh smooth characters [Reviewed by Travis Scrimshaw] #31116: Frédéric Chapoton: some cleanup in groups/ [Reviewed by Travis Scrimshaw] #31117: David Coudert, Jonathan Kliem: Improve Breadth First Search in c_graph.pyx [Reviewed by Jonathan Kliem, David Coudert] #31119: Frédéric Chapoton: some details in yangian.py [Reviewed by Travis Scrimshaw] #31124: Frédéric Chapoton: fix typos in quadratic_forms [Reviewed by Thierry Monteil] #31125: Frédéric Chapoton: some typos in sat/ and structure/ [Reviewed by Thierry Monteil] #31126: Frédéric Chapoton: fix typos in calculus/ [Reviewed by David Coudert] #31127: David Coudert, François Bissey: FPLLL 5.4.0 on macOS with homebrew [Reviewed by Matthias Koeppe] #31128: Zachary Scherr: MR50: Upgrade cffi to 1.14.4 [Reviewed by Matthias Koeppe] #31129: Jonathan Kliem: Improve Depth First Search in c_graph.pyx [Reviewed by David Coudert] #31130: Jonathan Kliem: Latte error raising does not work [Reviewed by Matthias Koeppe] #31139: Frédéric Chapoton: refresh binary_form_reduce.py [Reviewed by David Coudert] #31141: Frédéric Chapoton: some tiny details in multizetas [Reviewed by Travis Scrimshaw] #31142: Matthias Koeppe: Add missing SPKG.rst files [Reviewed by Dima Pasechnik] #31150: Frédéric Chapoton: refresh riemann_surface.py [Reviewed by David Coudert] #31154: Jonathan Kliem: Edges and report distances in Breadth First Search in c_graph.pyx [Reviewed by David Coudert] #31159: Matthias Koeppe: "Error building package": Instruct users to send config.log as well [Reviewed by Samuel Lelièvre] #31162: Frédéric Chapoton: typos in the doc/en folder [Reviewed by Matthias Koeppe] #31166: Matthias Koeppe: numpy: Fix for macOS 11 (Big Sur) [Reviewed by Zachary Scherr] #31175: David Coudert: refresh file generators/platonic_solids.py [Reviewed by Frédéric Chapoton] #31178: Markus Wageringel: inverse_image of element fails for morphism of quotient rings [Reviewed by Ricardo Buring] #31186: John Palmieri: MACOSX_VERSION is not always defined during the build process [Reviewed by Matthias Koeppe] Merged in sage-9.3.beta7: #3889: Frédéric Chapoton, Jonathan Kliem: extend parameter for number field sqrt method [Reviewed by Travis Scrimshaw, Vincent Delecroix] #7423: Dave Morris: plot3d can't handle log(0) [Reviewed by Travis Scrimshaw] #14821: Paul Masson, Dave Morris: Weird error in exponential integral [Reviewed by Ralf Stephan, Travis Scrimshaw] #21783: Matthias Koeppe: QEPCAD: get rid of qepcad bits in src/bin/sage-location [Reviewed by John Palmieri] #21907: Frédéric Chapoton: Bug in Maxima interface wrt polylog [Reviewed by Dave Morris] #24317: Ralf Stephan: Doctest: Improve conversion of inexact symbolic values [Reviewed by Dave Morris] #24459: Dave Morris: Segfault in matrix_integer_dense [Reviewed by Vincent Delecroix] #27103: Jonathan Kliem: Enable SIMD-instructions for Bitsets [Reviewed by Travis Scrimshaw] #29124: Matthias Koeppe: Add script packages build/pkgs/_prereq, build/pkgs/_bootstrap [Reviewed by Sébastien Labbé, Dima Pasechnik] #30517: Volker Braun, Frédéric Chapoton: MemoryError in doctesting combinat/designs/gen_quadrangles_with_spread.pyx [Reviewed by Dima Pasechnik] #30589: Matthias Koeppe: Upgrade Python to 3.9.1, pip to 20.3.3 [Reviewed by John Palmieri, Samuel Lelièvre] #30725: Matthias Koeppe, Jonathan Kliem: macOS: spkg-install scripts that force use of clang conflict with '-march=native' [Reviewed by Jonathan Kliem, Matthias Koeppe] #30731: Tobias Diez, Matthias Koeppe: Replace use of build/bin/sage-python23 by just python3 [Reviewed by Matthias Koeppe, Tobias Diez, Dima Pasechnik] #30944: Matthias Koeppe: tox: Improve local-sudo-ubuntu-standard [Reviewed by Jonathan Kliem] #31035: Matthias Koeppe: Remove mathjax configuration/symlink from jupyter notebook [Reviewed by Antonio Rojas] #31062: Matthias Koeppe: tox / GH Actions: Disable testsuites of packages depending on pip packages (pytest, ...) [Reviewed by Jonathan Kliem] #31084: Matthias Koeppe: Makefile: Add "ptest" targets that do not depend on the docbuild [Reviewed by Jonathan Kliem] #31097: Matthias Koeppe: build/pkgs/gcc/spkg-configure.m4: Fix SAGE_BROKEN_GCC test [Reviewed by Tobias Diez, Jonathan Kliem] #31121: Travis Scrimshaw: Further refactoring of eta products file [Reviewed by Frédéric Chapoton] #31132: Matthias Koeppe: homebrew: Unused packages (singular, pari, ...) in /usr/local leak into build when using homebrew's python3 [Reviewed by Zachary Scherr] #31134: John Palmieri: Update setuptools and setuptools_scm [Reviewed by Matthias Koeppe] #31138: Sandy Scott: Document WSL Installation [Reviewed by Tobias Diez] #31140: Frédéric Chapoton: use ⨂ for unicode of tensor symbol [Reviewed by Travis Scrimshaw] #31143: Frédéric Chapoton: shorten range(0, *) in combinat folder [Reviewed by David Coudert] #31144: Frédéric Chapoton: refresh the file polyhedron/plot.py [Reviewed by David Coudert] #31146: Matthias Koeppe: cygwin-standard: fpylll build fails [Reviewed by Martin Albrecht] #31147: David Roe: Add missing curly braces in latex of Kodaira symbol [Reviewed by Frédéric Chapoton, John Cremona, Samuel Lelièvre] #31148: Zachary Scherr: MR51: Allow Matplotlib to use system qhull >= 7.2.0 [Reviewed by Dima Pasechnik] #31181: Michael Jung: Mutability class does not return is_immutable [Reviewed by Travis Scrimshaw] #31183: John Palmieri: Fix scipy for MacOS 11 (Big Sur) [Reviewed by Zachary Scherr] #31184: Frédéric Chapoton: refresh one givaro file [Reviewed by David Coudert] #31189: Matthias Koeppe: local quicklisp install interfers with Maxima package building [Reviewed by Dima Pasechnik] #31190: Frédéric Chapoton: add Farey maps as examples of simplicial surfaces [Reviewed by Travis Scrimshaw] #31192: Tobias Diez, Matthias Koeppe: Installation manual: Fix documentation of python prerequisite (sage-bootstrap-python) [Reviewed by Dima Pasechnik] #31194: Michael Jung: Make Class with Mutability compatible with require_mutable wrapper [Reviewed by Travis Scrimshaw] #31195: Frédéric Chapoton: yet another cleanup for pbori [Reviewed by Samuel Lelièvre] #31196: Michael Jung: Code Improvements for Mutability module [Reviewed by Travis Scrimshaw] #31197: Jonathan Kliem: Use bitsets/binary matrix for edges of dense graphs [Reviewed by David Coudert] #31200: Jonathan Kliem: Small improvements to binary matrix [Reviewed by David Coudert] #31207: Jonathan Kliem: Implement copy for binary matrix [Reviewed by David Coudert] #31208: Jonathan Kliem: Use popcnt and tzcnt to speed up bitsets on Intel and AMD [Reviewed by David Coudert] #31210: Tobias Diez: Make it possible to run github workflows manually [Reviewed by Matthias Koeppe] #31212: Frédéric Chapoton: fix submonoid method when the generating set include the identity [Reviewed by Franco Saliola] #31215: Michael Jung: Documentation of Item Assignment Behavior for Bundle Connections [Reviewed by Travis Scrimshaw] #31216: Matthias Koeppe: tox.ini (local): Add environment variables to skip system package installs and other steps, add mechanism for a local interactive shell [Reviewed by Tobias Diez] #31218: Matthias Koeppe: bootstrap: Fix "sage-venv-config: /doesnotexist/python3: bad interpreter" [Reviewed by Tobias Diez] #31219: Tobias Diez: Fix escape of docstring for derivative method [Reviewed by Frédéric Chapoton] #31220: Tobias Diez: Remove test for safe directory while doctesting [Reviewed by John Palmieri, François Bissey] #31221: Tobias Diez: Alllow arbitrary folder as output directory of docbuild [Reviewed by Matthias Koeppe] #31224: Vincent Delecroix: Add surface-dynamics as a pip package [Reviewed by Matthias Koeppe] #31226: Jonathan Kliem: Generalize face iterator of combinatorial polyhedron to locally branched lattices [Reviewed by Travis Scrimshaw] #31229: Frédéric Chapoton: more typing annotations in Tamari interval posets [Reviewed by Travis Scrimshaw] #31233: Michael Jung: Categories for Homset of Manifolds do not meet [Reviewed by Travis Scrimshaw] #31234: Travis Scrimshaw: multiplication of matrix with zero columns or rows fails [Reviewed by Markus Wageringel] #31237: Vincent Delecroix: Add slabbe as an optional package [Reviewed by Matthias Koeppe] #31238: Vincent Delecroix: Add admcycles as an optional package [Reviewed by Matthias Koeppe] #31239: Thierry Monteil: Add ore_algebra optional package [Reviewed by Matthias Koeppe] #31240: Vincent Delecroix: sage-flatsurf pip package [Reviewed by Matthias Koeppe] #31243: Michael Jung: Stronger Categories for Manifold Examples: Connectedness [Reviewed by Travis Scrimshaw] #31254: Travis Scrimshaw: Do not perform unnecessary subdivisions in matrices [Reviewed by Markus Wageringel] #31255: Michael Jung: Follow Up: Mutability of Sections and Tensor Fields [Reviewed by Matthias Koeppe] #31256: Frédéric Chapoton: more care for pbori [Reviewed by Travis Scrimshaw] #31257: Dave Morris: quo_rem gives wrong answers for LaurentPolynomial_mpair [Reviewed by Salvatore Stella] #31258: Matthias Koeppe: Upgrade cmake to 3.19.3 [Reviewed by John Palmieri] #31261: Matthias Koeppe: Update pplpy to 0.8.6 [Reviewed by Jonathan Kliem] #31262: Jonathan Kliem: Implement non zero chunks for sparse bitsets [Reviewed by Travis Scrimshaw] #31263: Jonathan Kliem: Broken `sage -b` [Reviewed by Matthias Koeppe] #31265: Frédéric Chapoton: changes in kschur to get rid of specific product definition there [Reviewed by Travis Scrimshaw] #31266: Travis Scrimshaw: Signed tensor products does not allow tensor products with non-signed modules [Reviewed by John Palmieri] #31270: Matthias Koeppe, John Palmieri: Remove sage-location's "sage-force-relocate" mechanism, fix script to work without SAGE_ROOT [Reviewed by John Palmieri, Matthias Koeppe] #31271: Julian Rüth: MR52: upgrade ubuntu system in docker image [Reviewed by Frédéric Chapoton] #31272: Travis Scrimshaw: Improve the documentation for tensor() [Reviewed by John Palmieri] #31273: Michael Jung: Remove deprecated `form` input for bundle connections [Reviewed by Eric Gourgoulhon] #31283: Markus Wageringel: 1000× speedup of conjugate of double dense matrices [Reviewed by Travis Scrimshaw] Merged in sage-9.3.beta8: #8972: Simon King, Michael Jung: Inversion and fraction fields for power series rings [Reviewed by Robert Bradshaw, Travis Scrimshaw] #10332: Michael Orlitzky: isPositiveSemiDefinite not accessible [Reviewed by Dima Pasechnik] #15114: Marc Mezzarobba: disallow dangerous coercions to RIF [Reviewed by Vincent Delecroix] #17684: Dave Morris: density_plot() is broken with functions involving symbolic expressions [Reviewed by Karl-Dieter Crisman] #18416: Michael Jung: UniqueRepresentation issue with PowerSeriesRing [Reviewed by Travis Scrimshaw] #25322: Marc Mezzarobba: Some cleanup of the libsingular polynomial constructor [Reviewed by Frédéric Chapoton] #25934: John Cremona: Problem displaying a number field (fractional) ideal [Reviewed by Frédéric Chapoton, Samuel Lelièvre] #26410: Joshua Campbell: Make threejs / three.js viewer respect thickness in parametric_plot3d [Reviewed by Eric Gourgoulhon] #26563: Michael Orlitzky: Add doctest for elliptic integrals of the second kind [Reviewed by Travis Scrimshaw] #28143: Vincent Neiger: Minimal kernel bases [Reviewed by Romain Lebreton, Pascal Giorgi, Johan Rosenkilde, Seung Gyu Hyun] #29152: Matthias Koeppe, Miguel Marco, Simon King: Cygwin: Fix cliquer, giac, meataxe, rw, libbraiding to build shared libraries, using `AM_LDFLAGS=-no-undefined` [Reviewed by Matthias Koeppe, Dima Pasechnik] #29497: Vincent Delecroix, Isuru Fernando, Matthias Koeppe: package symengine and its Python interface [Reviewed by Matthias Koeppe, Vincent Delecroix] #29555: Matthias Koeppe: Upgrade: OpenSSL 3.0, make it a standard package [Reviewed by Dima Pasechnik] #29632: Peter Bruin: segfault in `is_identity` morphism check over number fields [Reviewed by John Cremona, Markus Wageringel] #29964: Jonathan Kliem: Make libs doctests ready for random seeds [Reviewed by Marc Mezzarobba] #29967: Jonathan Kliem: Make interfaces doctests ready for random seeds [Reviewed by Dave Morris] #29969: Jonathan Kliem: Make misc doctests ready for random seeds [Reviewed by Marc Mezzarobba] #30000: John Cremona: Implement a Q-curve test for elliptic curves over number fields [Reviewed by Kiran Kedlaya, Frédéric Chapoton] #30174: Michael Jung: Trivial coercion Modules(QQ)(FiniteRankFreeModule(QQ, 3)) fails [Reviewed by Travis Scrimshaw] #30186: Martin Rejmon: containment check for standard bracketed lyndon words does not work [Reviewed by Jonathan Kliem] #30378: Dave Morris: (x^2).subs({x: sqrt(x)}) returns sqrt(x) instead of x [Reviewed by Matthias Koeppe] #30426: Travis Scholl: crt with ideals [Reviewed by Kevin Lui] #30446: Ben Livingston, Dima Pasechnik: Update pynac to 0.7.27 to fix wrong result on symbolic exponentiation [Reviewed by Dima Pasechnik, Matthias Koeppe] #30482: Dave Morris: Remove src/sage/symbolic/todo.txt [Reviewed by Matthias Koeppe] #30537: Matthias Koeppe, François Bissey: Upgrade giac to 1.6.0-47 [Reviewed by François Bissey, Matthias Koeppe] #30688: Dave Morris: Crash when expanding square root of -x [Reviewed by Dima Pasechnik] #30728: Nina Klobas: Drawing generalizations of generalized Petersen graphs [Reviewed by David Coudert] #30770: Tobias Diez, Matthias Koeppe: cython_aliases: Use ecl-config to determine compiler/linker flags for ecl [Reviewed by Matthias Koeppe, Dima Pasechnik] #30809: Matthias Koeppe: interactive_simplex_method: Use of \color breaks typesetting of dictionaries in the Jupyter notebook [Reviewed by Yuan Zhou] #30892: Xavier Caruso, Raphaël Pagès: Characteristic polynomials over complete discrete valuation rings/fields [Reviewed by Travis Scrimshaw] #30912: Matthias Koeppe: sagelib: Update metadata for PyPI deployment as package sagemath-standard [Reviewed by John Palmieri] #30984: Frédéric Chapoton, Matthias Koeppe: sage_setup: Replace imports from distutils by setuptools [Reviewed by Matthias Koeppe, John Palmieri] #31003: Tobias Diez: Add minimal pytest configuration [Reviewed by Matthias Koeppe] #31036: Jonathan Kliem: fixdoctests fails on multiline tests [Reviewed by Markus Wageringel] #31045: Matthias Koeppe: pip, wheel, setuptools: Make wheels available in SAGE_SPKG_WHEELS [Reviewed by John Palmieri] #31064: Matthias Koeppe: ci-cygwin*.yml: delegate to tox, add more stages, use more specific SAGE_LOCAL [Reviewed by Dima Pasechnik] #31114: Samuel Lelièvre, Matthias Koeppe: Add one file build/pkgs/*/repology.txt per spkg [Reviewed by Matthias Koeppe, Dima Pasechnik] #31118: Matthias Koeppe: sage --package update-latest: Fix for package-names-containing-dashes; accept package classes :standard:, :optional: etc., restrict to normal Python packages; fix sage --package fix-checksum [Reviewed by Dima Pasechnik] #31177: Matthias Koeppe: Add graphviz, pygraphviz packages [Reviewed by David Coudert] #31180: Matthias Koeppe: Add snappy as a pip package [Reviewed by Nathan Dunfield] #31182: Michael Jung: Mutability class and pickling [Reviewed by Travis Scrimshaw] #31191: Matthias Koeppe: ubuntu-bionic-standard (python 3.6): make ptest fails with UnicodeDecodeError [Reviewed by Jonathan Kliem] #31227: Matthias Koeppe: Accept /usr/bin/python3 from XCode 12.3 on macOS 10.15 (Catalina) and 11 (Big Sur) [Reviewed by Jonathan Kliem] #31279: Matthias Koeppe: Add package argon2-cffi (dependency of Jupyter notebook) [Reviewed by Jonathan Kliem] #31344: Matthias Koeppe, John Palmieri: homebrew: docbuild crashes, libtcl AtForkPrepare - from sage.misc.cython globals / multiprocessing [Reviewed by John Palmieri] #31357: Matthias Koeppe: Fixup src/VERSION.txt added in #30912 [Reviewed by John Palmieri] #31372: Matthias Koeppe: Remove GAP, PARI, Singular Jupyter kernels from Docker image [Reviewed by Frédéric Chapoton] #31382: Michael Orlitzky: bashisms in build/bin/sage-build-env [Reviewed by Jonathan Kliem] #31389: Matthias Koeppe: Remove clash of tdlib/ with tdlib.pyx in src/sage/graphs/graph_decompositions [Reviewed by David Coudert] #31397: John Palmieri: Work around LaTeX bug for building pdf documentation [Reviewed by Dave Morris] #31412: Matthias Koeppe: GH Actions: Fix up for new linux runner default [Reviewed by Jonathan Kliem] Merged in sage-9.3.beta9: #13097: Dave Morris: integral of ln(1+4/5*sin(x)) from -3.1415 to 3.1415 crashes Maxima and Sage [Reviewed by Karl-Dieter Crisman] #14602: Dave Morris: Symbolic expression to number fields [Reviewed by Vincent Delecroix] #17720: Dave Morris: failing primary decomposition with extension field coefficients [Reviewed by Markus Wageringel] #18074: Dave Morris: contour_plot of zero [Reviewed by Karl-Dieter Crisman] #20023: Dima Pasechnik, Matthias Koeppe: sage_bootstrap: Remove purported Python 2.6 support [Reviewed by Matthias Koeppe, Dima Pasechnik] #20784: Dave Morris: not all symbolic equations stay unevaluated [Reviewed by Markus Wageringel] #24237: John Cremona: minimal quadratic twist of elliptic curves: documentation and implementation inconsistent [Reviewed by David Roe] #25743: Frédéric Chapoton, Travis Scrimshaw, John Cremona: Speed up iteration of ProjectiveSpace_finite_field [Reviewed by Travis Scrimshaw, Frédéric Chapoton, John Cremona] #28782: David Roe: Better interface to Galois groups [Reviewed by Travis Scrimshaw, Xavier Caruso] #30010: Matthias Koeppe: Split sage_setup.docbuild out to a separate distribution sage_docbuild [Reviewed by John Palmieri] #30310: Michael Jung: Immutability of chart functions [Reviewed by Travis Scrimshaw] #30659: John Cremona: supersingular_j_polynomial does not use cached values [Reviewed by Frédéric Chapoton] #30786: Dave Morris: Multiplying and dividing by 3 hangs [Reviewed by Travis Scrimshaw, Dima Pasechnik] #31099: Matthias Koeppe: tox.ini, GH Actions: Add test for Sage distribution on conda using environment.yml [Reviewed by Dima Pasechnik] #31137: Dave Morris: Fix subs failure involving integer-valued rational exponents [Reviewed by Dima Pasechnik] #31152: David Coudert: refresh the file generators/basic.py [Reviewed by Frédéric Chapoton] #31155: David Coudert: refresh file generators/chessboard.py [Reviewed by Frédéric Chapoton] #31158: David Coudert: refresh file generators/smallgraphs.py (part 1) [Reviewed by Frédéric Chapoton] #31170: Frédéric Chapoton: some typos in sage_setup/ doctest/ numerical/ and ext_data/ [Reviewed by David Coudert] #31171: David Coudert: refresh file generators/smallgraphs.py (part 2) [Reviewed by Frédéric Chapoton] #31172: David Coudert: refresh file generators/smallgraphs.py (part 3) [Reviewed by Frédéric Chapoton] #31173: David Coudert: refresh file generators/world_map.py [Reviewed by Frédéric Chapoton] #31174: David Coudert: refresh file generators/degree_sequence.py [Reviewed by Travis Scrimshaw] #31201: Frédéric Chapoton: fix typos and returns in geometry/polyhedron [Reviewed by Samuel Lelièvre] #31202: Frédéric Chapoton: fix some typos in manifolds/ [Reviewed by Samuel Lelièvre] #31203: Travis Scrimshaw: multiplication_table does not work for certain types of groups [Reviewed by Günter Rote] #31213: Frédéric Chapoton: a few details in dynamics [Reviewed by David Coudert] #31214: Frédéric Chapoton: some details in algebras/ [Reviewed by David Coudert] #31225: Frédéric Chapoton: some details in modular symbols [Reviewed by John Cremona] #31230: Frédéric Chapoton: enhanced typing annotations in Parking functions [Reviewed by Travis Scrimshaw] #31231: Frédéric Chapoton: enhanced typing annotations in combinat.py [Reviewed by Travis Scrimshaw] #31232: Frédéric Chapoton: some typing annotations in plane partitions [Reviewed by Travis Scrimshaw] #31246: Frédéric Chapoton: some details in posets [Reviewed by Travis Scrimshaw] #31248: Siddharth Bhat: Make tableaux error messages more precise [Reviewed by Jonathan Kliem] #31252: Matthias Koeppe: Suppress message "WARNING: You are using pip version 20.2.3; however, version 20.3.3 is available." [Reviewed by John Palmieri] #31268: Matthias Koeppe: Remove optional package termcap [Reviewed by John Palmieri] #31278: Matthias Koeppe: widgetsnbextension should not depend on notebook [Reviewed by Dima Pasechnik] #31284: Daniel Bump, Willie Aboumrad, Travis Scrimshaw: FusionRing: Rmatrix revisited [Reviewed by Travis Scrimshaw] #31288: Frédéric Chapoton: some details in calculus.py [Reviewed by Travis Scrimshaw] #31289: Tobias Diez: Mark documentation builder as parallel_read_safe [Reviewed by Dima Pasechnik, John Palmieri] #31294: Dave Morris: Implement fetch_int method for non-givaro finite fields [Reviewed by Travis Scrimshaw] #31298: Frédéric Chapoton: convert back hypergeometric functions from fricas [Reviewed by Martin Rubey] #31301: Frédéric Chapoton: make Parkingfunctions() pass the TestSuite [Reviewed by Travis Scrimshaw] #31302: Frédéric Chapoton: put Permutations in SetsWithGrading category [Reviewed by Samuel Lelièvre] #31303: Frédéric Chapoton: put NonDecreasingParkingFunctions in SetsWithGrading category [Reviewed by Samuel Lelièvre] #31315: Yuan Zhou: sage.numerical.backends: GenericBackend doctests failure in remove_constraints [Reviewed by Matthias Koeppe] #31317: John Cremona: eclib interface uses bad default value for elliptic curve modular symbols [Reviewed by Chris Wuthrich] #31318: Matthias Koeppe: python3 spkg-configure.m4: Add deprecation warning regarding system python 3.6 [Reviewed by John Palmieri] #31319: Frédéric Chapoton, Tom Grubb: Partitions parts_in vs WeightedIntegerVectors [Reviewed by Travis Scrimshaw] #31321: Matthias Koeppe: build/pkgs: Add some missing install-requires metadata, add some documentation to the developer's guide [Reviewed by Dima Pasechnik] #31322: Tobias Diez: Use ambient metric by default in hodge_dual [Reviewed by Travis Scrimshaw] #31323: Tobias Diez: Make self-diffeomorphisms default [Reviewed by Travis Scrimshaw] #31328: Matthias Koeppe: Upgrade ipywidgets to 7.6.3 [Reviewed by Dima Pasechnik] #31332: Matthias Koeppe: sage.misc.persist: Import SAGE_DB on need only [Reviewed by François Bissey] #31334: Matthias Koeppe: sage.doctest.control: Do not fail if sage.libs.arb cannot be imported [Reviewed by François Bissey] #31336: Matthias Koeppe, Dima Pasechnik: Upgrade ecl to 21.2.1 [Reviewed by Dima Pasechnik, Matthias Koeppe] #31349: Matthias Koeppe: sage.misc.cython: Replace imports from distutils by setuptools [Reviewed by John Palmieri] #31353: John Palmieri: sage --docbuild: Add options to list all documents [Reviewed by Matthias Koeppe] #31354: Frédéric Chapoton, John Cremona: move Dedekind zeta function to the category of number fields [Reviewed by John Cremona, Frédéric Chapoton] #31358: Matthias Koeppe: python3 spkg-configure.m4: Do not reject python based on sysconfig LDFLAGS containing "-L." [Reviewed by Steven Trogdon] #31361: Matthias Koeppe: tox.yml: Fix up "dist" workflow [Reviewed by Jonathan Kliem] #31362: Matthias Koeppe: make build-local, make build-venv [Reviewed by John Palmieri] #31364: Antonio Rojas: Don't use deprecated numpy type aliases [Reviewed by Matthias Koeppe] #31365: Matthias Koeppe: Add NTL to cython_aliases and sage.misc.cython library search dirs [Reviewed by Jonathan Kliem] #31367: Markus Wageringel: bug in kernel of ring homomorphism of quotient rings [Reviewed by Travis Scrimshaw] #31373: Jonathan Kliem: Upgrade ipython to 7.20.0 and jedi to 0.18.0 [Reviewed by Matthias Koeppe] #31377: Tobias Diez, Matthias Koeppe: ./configure --enable-editable [Reviewed by Matthias Koeppe, Tobias Diez, Jonathan Kliem] #31379: Frédéric Chapoton: change CRLF to unix line feed in 3 files [Reviewed by Matthias Koeppe] #31380: Jonathan Kliem: Upgrade pip to 21.0.1 [Reviewed by Matthias Koeppe] #31381: Sébastien Labbé: Fix the handling of the orientation of edges provided by the edge_option of G.graphviz_string [Reviewed by Frédéric Chapoton] #31383: Marc Mezzarobba: Bug converting zero Laurent series to power series [Reviewed by Dave Morris] #31387: Steven Trogdon: Cosmetic update in building the pdf docs [Reviewed by Dave Morris] #31388: Julian Ritter: Fix docstring in hyperplanes method for HyperplaneArrangement [Reviewed by Zachary Scherr] #31390: Matthias Koeppe: Remove deprecated sage.interacts.debugger [Reviewed by Frédéric Chapoton] #31391: Martin Rubey: crystals.HighestWeight constructs wrong crystal for given weight [Reviewed by Travis Scrimshaw, Anne Schilling] #31398: Steven Trogdon: building the pdf docs - undefined references [Reviewed by John Palmieri] #31402: Matthias Koeppe: "sage -tox -e doctest" underquotes filenames; fix "sage -startuptime" with file arguments [Reviewed by Jonathan Kliem] #31410: Martin Rubey: fix symmetric_form for type B and F [Reviewed by Travis Scrimshaw] #31419: Matthias Koeppe: Update python to 3.9.2 [Reviewed by Dima Pasechnik] #31428: Simon Brandhorst: Make trivial AbelianGroupGap convert empty list to identity [Reviewed by Samuel Lelièvre] #31430: Matthias Koeppe: e-antic: Update to 0.1.9 to add support for FLINT 2.7 [Reviewed by Jonathan Kliem] #31433: John Cremona: more efficient method for number of real components of an elliptic curve over Q [Reviewed by Frédéric Chapoton] #31439: Matthias Koeppe: fedora-26-minimal: openssl 3.0.alpha11 build fails with "Can't locate IPC/Cmd.pm" [Reviewed by Jonathan Kliem] #31441: Matthias Koeppe: cygwin-standard: argon2-cffi build fails: Fix up dependencies of cffi [Reviewed by John Palmieri] #31442: Matthias Koeppe: cygwin: Macros from sys/termio.h cause errors compiling sagelib extension modules that use fflas-ffpack [Reviewed by Jonathan Kliem] #31453: Michael Orlitzky: CombinatorialFreeModule _cartesian_product_of_elements() should support generators [Reviewed by Matthias Koeppe] #31462: Jonathan Kliem: Fix examples block in `combinat/words/lyndon_word.py` [Reviewed by Samuel Lelièvre] #31476: Matthias Koeppe, Jonathan Kliem: Downgrade ipython to 7.16.x and jedi to 0.17.x to restore Python 3.6 support (ubuntu-bionic-standard) [Reviewed by Jonathan Kliem, Matthias Koeppe] #31480: Jonathan Kliem: Fix incorrect lazy imports at startup [Reviewed by Matthias Koeppe] Merged in sage-9.3.rc0: #9825: Emmanuel Charpentier: desolve_system unable to interpret ilt and Maxima's temporary variables [Reviewed by Karl-Dieter Crisman] #10147: Vincent Delecroix: conversions of constant polynomials [Reviewed by Matthias Koeppe] #23332: Dave Morris: Calculating eigenvectors of symbolic matrices leads to a crash. [Reviewed by Kwankyu Lee] #23459: Vincent Delecroix: QuadraticField(D) fails for large D [Reviewed by Matthias Koeppe] #23801: David Roe: subfields of large finite fields raises a TypeError [Reviewed by Julian Rüth] #24688: Kevin Lui, John Cremona: implement Faltings height of an elliptic curve [Reviewed by Peter Bruin, John Cremona, Frédéric Chapoton] #25993: Antonio Rojas, Markus Wageringel, Matthias Koeppe: Upgrade: Singular 4.2.0, pysingular 0.9.7 [Reviewed by Matthias Koeppe, Dima Pasechnik] #26912: Erik Bray: Test failure in doctest framework [Reviewed by Frédéric Chapoton] #28530: Vincent Delecroix: Bug in polynomial rootfinding over QQbar related to QQbar → CC → pari conversions [Reviewed by Markus Wageringel] #29330: Victor Santos: checking for skew_hermitian [Reviewed by David Ayotte] #29537: Jonathan Kliem, Matthias Koeppe: build not portable despite using SAGE_FAT_BINARY=yes, NTL/openblas/numpy-related [Reviewed by Matthias Koeppe, Jonathan Kliem] #30284: Michael Jung: Immutability of Bundle Connections [Reviewed by Eric Gourgoulhon] #30383: Matthias Koeppe: Add "configure --disable-notebook"; show descriptions of optional packages in "configure --help" [Reviewed by John Palmieri, Dima Pasechnik] #30504: Samuel Lelièvre: System package information for MacPorts [Reviewed by Matthias Koeppe] #30826: Ben Hutz: Fix doubled word typos [Reviewed by Dave Morris, Frédéric Chapoton] #31047: Marius Gerbershagen: Conversion of symbolic functions with latex_name or nargs from maxima and sympy is broken [Reviewed by Eric Gourgoulhon] #31109: Saher Amasha, Safa Amasha: Add degree method to function field element [Reviewed by Xavier Caruso] #31204: John Palmieri: doctests: Filter out linker warning messages [Reviewed by Matthias Koeppe] #31242: Frédéric Chapoton: Capitalize proper names in comments and docstrings [Reviewed by David Coudert] #31253: Jonathan Kliem: Put equations in stable position for backend cdd [Reviewed by Matthias Koeppe] #31313: Dave Morris: Memory leak in bipartite_graph (and so in generalised_quadrangle_with_spread) [Reviewed by Dima Pasechnik] #31326: Zachary Scherr: macos-11.0: scipy build fails [Reviewed by Matthias Koeppe] #31330: Frédéric Chapoton: less usage of deepcopy in quadratic forms [Reviewed by Travis Scrimshaw] #31335: Matthias Koeppe: homebrew: Unused packages (singular, pari, ...) in /usr/local leak into sagelib/cysignals builds via distutils.cfg [Reviewed by John Palmieri] #31340: Volker Braun: memory leak when constructing a row of an integer matrix [Reviewed by Matthias Koeppe] #31360: Matthias Koeppe: git: Reduce from a normal standard package to an optional script package [Reviewed by Dima Pasechnik] #31374: Simon Brandhorst: Fix an if statement that is never called in normal_form [Reviewed by Frédéric Chapoton] #31375: Matthias Koeppe: bootstrap: Give advice regarding bootstrap prerequisites on failure [Reviewed by Dima Pasechnik] #31394: Dima Pasechnik: add Gritsenko's SRG(65, 32, 15, 16) [Reviewed by David Coudert] #31423: Matthias Koeppe: Do not use sage-pip-uninstall for PEP-517 packages, do not give up if sage-pip-uninstall fails [Reviewed by Dima Pasechnik] #31454: Martin Rejmon: Fix bug in WordMorphism.growing_letters() and periodic_points() [Reviewed by Vincent Delecroix] #31460: Asier Eiguren: add_condition method improved [Reviewed by Frédéric Chapoton] #31461: David Coudert: Fix tests formatting in `graphs/generators/families.py` [Reviewed by Dave Morris] #31466: Matthias Koeppe: Upgrade numpy to 1.19.5 [Reviewed by John Palmieri] #31467: Matthias Koeppe: Upgrade cvxopt to 1.2.6 [Reviewed by Dima Pasechnik] #31468: Matthias Koeppe: texttable: Add missing dependencies [Reviewed by John Palmieri] #31470: Xavier Caruso: Allow matrices and vectors over Ore polynomial rings [Reviewed by Frédéric Chapoton] #31471: Vincent Neiger: Matrix-wise functions for univariate polynomial matrices [Reviewed by Seung Gyu Hyun] #31474: Erik Bray: Upgrade cysignals to 1.10.3 [Reviewed by Jonathan Kliem] #31482: Matthias Koeppe: Upgrade: latte_int 1.7.6 [Reviewed by Jonathan Kliem] #31484: Jonathan Kliem: Allow keyboard interrupt of mcqd [Reviewed by Samuel Lelièvre] #31492: Matthias Koeppe: GH Actions: Reduce/reorder macOS tests [Reviewed by Jonathan Kliem] #31493: Matthias Koeppe: tox.ini, build/bin/write-dockerfile.sh: Use configure --enable-download-from-upstream-url --enable-experimental-packages instead of setting SAGE_SPKG directly [Reviewed by Dima Pasechnik] #31497: Frédéric Chapoton: fix some annotations and flake8 E702 [Reviewed by Samuel Lelièvre] #31500: Frédéric Chapoton: avoid empty list as default argument [Reviewed by Travis Scrimshaw] #31503: Matthias Koeppe: Updates: pillow 8.1.2, matplotlib 3.3.4, imagesize 1.2.0 [Reviewed by Dima Pasechnik] #31504: Frédéric Chapoton: details in relint config [Reviewed by Matthias Koeppe] #31518: Frédéric Chapoton: refresh necklace.py [Reviewed by Travis Scrimshaw] #31520: Frédéric Chapoton: refresh similarity class [Reviewed by Samuel Lelièvre] #31524: Frédéric Chapoton: refresh one file about quadratic forms [Reviewed by Samuel Lelièvre] Merged in sage-9.3.rc1: #31521: Jonathan Kliem: numpy build broken with SAGE_FAT_BINARY=yes [Reviewed by Matthias Koeppe] Merged in sage-9.3.rc2: #30319: Jonathan Kliem, Matthias Koeppe: Upgrade cddlib to fix wrong intersection of polytopes [Reviewed by Matthias Koeppe, Dima Pasechnik] #30888: Michael Orlitzky: Make $SAGE_LOCAL/bin/sage work again from any directory, in an environment without SAGE_* variables, following symlinks [Reviewed by Matthias Koeppe] #31395: Michael Orlitzky: RuntimeError: can't start new thread (due to memlimit) [Reviewed by Dima Pasechnik] #31409: Matthias Koeppe: Make it possible to disable build of r, rpy2 using ./configure --disable-r [Reviewed by François Bissey, John Palmieri] #31502: Matthias Koeppe: GH Actions: Free more disk space [Reviewed by Jonathan Kliem] #31523: Matthias Koeppe: Fix dependencies of ipywidgets [Reviewed by Jonathan Kliem] #31530: Dave Morris: New subs bug caused by #30378 [Reviewed by Matthias Koeppe] #31536: Kwankyu Lee: Fix Sage rich output problems by coupling MathJax with html [Reviewed by Eric Gourgoulhon] #31538: Matthias Koeppe: i386: openssl and tachyon attempt 64-bit build and fail [Reviewed by Dima Pasechnik] #31551: Marc Mezzarobba: Incorrect conversion from ℚ[-i] to SR [Reviewed by Vincent Delecroix] #31552: Matthias Koeppe: Update singular to stop /usr/local from leaking into Singular build [Reviewed by François Bissey] #31558: Vincent Delecroix: homomorphism of extension fields do not preserve canonical embeddings of the base [Reviewed by Samuel Lelièvre] #31584: Matthias Koeppe: Fix suitesparse/cvxopt /usr/local leakage [Reviewed by Michael Orlitzky] Merged in sage-9.3.rc3: #27804: Matthias Koeppe: spkg-configure.m4, system package info for lrslib [Reviewed by Dima Pasechnik] #31479: Dave Morris: Do not use pynac's poly_mul_expand function until it has been debugged [Reviewed by Volker Braun, Matthias Koeppe] #31496: Matthias Koeppe: Remove configure message "SAGE_SPKG_CONFIGURE_SAGELIB: command not found" [Reviewed by Dima Pasechnik] #31515: Matthias Koeppe: Updates: sympy 1.7.1, symengine[_py] 0.7 [Reviewed by Dima Pasechnik] #31592: Matthias Koeppe: Upgrade/patch singular more to remove bad -rpath linker options [Reviewed by François Bissey] #31638: Nathan Dunfield: Add mention of Culler's app to install docs for macOS [Reviewed by Matthias Koeppe] Merged in sage-9.3.rc4: #31648: Vincent Delecroix: Disable jedi for tab-completion [Reviewed by Matthias Koeppe] #31671: Dima Pasechnik: add gc.collect() to the memleak test from #31313 [Reviewed by John Palmieri] Merged in sage-9.3.rc5: #25034: Michael Jung: Special case for gen_legendre_P with n == m gives incorrect results for x in (-1,1) [Reviewed by Eric Gourgoulhon, Travis Scrimshaw] #29372: Matthias Koeppe: At the end of configure, show installation hints for non-enabled optional packages separately [Reviewed by Samuel Lelièvre] #30518: Vincent Delecroix: eigenvectors over QQbar are incorrectly conjugated [Reviewed by Marc Mezzarobba] #31541: Matthias Koeppe: GH Actions: Update 32-bit platforms [Reviewed by Dima Pasechnik] #31555: Matthias Koeppe: Update freetype to 2.10.4 - fixes a vulnerability [Reviewed by Dima Pasechnik] #31600: Joshua Campbell: threejs does not handle transparency correctly [Reviewed by Matthias Koeppe] #31612: Matthias Koeppe: Update setuptools_scm to 6.0.1 [Reviewed by Dima Pasechnik] #31620: Nils Bruin: Document installing sagemath kernel without copying documentation [Reviewed by Matthias Koeppe] #31625: Simon Brandhorst: Memory leak for IntegralLattice [Reviewed by Travis Scrimshaw] #31628: Marc Mezzarobba, Vincent Delecroix: fix/improve conversions to QQbar and AA [Reviewed by Vincent Delecroix, Marc Mezzarobba] #31640: Vincent Delecroix: 2d Bezier path does not plot in 3d [Reviewed by Frédéric Chapoton] #31641: Matthias Koeppe: Remove outdated MacPorts/fink ban [Reviewed by Dima Pasechnik] #31645: Dave Morris: incorrect handling of constant term when creating power series [Reviewed by Travis Scrimshaw] #31646: Vincent Delecroix: clean BezierPath constructor [Reviewed by Travis Scrimshaw] #31673: Mauricio Collares: MR53: Unbreak sagelib's setup.py install [Reviewed by Matthias Koeppe] #31679: Dave Morris: Actually fix: "Do not use pynac's poly_mul_expand function until it has been debugged" [Reviewed by Matthias Koeppe] Merged in sage-9.3: #31624: Matthias Koeppe: fedora-34-standard: eclib, singular, ipykernel build failures with system ntl, zeromq [Reviewed by Volker Braun]