Sage 9.0 was released on 2020-01-01. 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 116 people contributed to this release. Of those, 16 made their first contribution to Sage: - A. S. Dasher [first contribution] - Adam Towsley - Alex Galarraga - Alex J. Best - Alexis Suki Dasher [first contribution] - Andrew O'Desky [first contribution] - Andrey Novoseltsev - André Apitzsch - Anna Chlopecki - Anton Leykin [first contribution] - Antonio Rojas - Bella Tobin [first contribution] - Ben Barros - Ben Hutz - Bianca Thompson - Brandon Gontmacher - Brent Baccala - Bruno Grenet - Chaman Agrawal - Chris Wuthrich - Christian Nassau - Darij Grinberg - Dave Morris [first contribution] - David Coudert - David Einstein - David Roe - Dima Pasechnik - Durand Amaury [first contribution] - Edgar Costa - Emmanuel Charpentier - Eric Gourgoulhon - Eric Zhu - Erik Bray - Florentin Jaffredo - Franco Saliola - François Bissey - Frederic Han - Friedrich Wiemer - Frédéric Chapoton - George H. Seelinger - Gerardo E Zelaya Eufemia [first contribution] - Grayson Jorgenson - Heidi Benham - Hendrik Schrezenmaier - Henri Derycke - Henry Talbott - Isuru Fernando - Jamie Juul [first contribution] - Jasmine Camero - Jean-Philippe Labbé - Jeroen Demeyer - Jerry James - Jesper Noordsij - Joey Lupo - John Cremona - John Doyle - John Michael Clark [first contribution] - John Palmieri - Jonas Frede [first contribution] - Jonathan Kliem - Jori Mäntysalo - Julia Cai - Julian Ritter - Julian Rüth - Juliano Levier-Gomes - Karim Van Aelst - Karl-Dieter Crisman - Kevin Lui - Kiran Kedlaya - Kwankyu Lee - Laith Rastanawi - Leopold Mayer - Lukas Stennes - Léo Brunswic [first contribution] - Marc Mezzarobba - Marketa Slukova - Markus Wageringel - Martin Rubey - Matt Torrence - Matthew Lancellotti - Matthias Koeppe - Maverick Woo [first contribution] - Meghan Grip - Michael Jung - Michael Orlitzky - Miguel Marco - Nadia Lafrenière - Nicholas Triantafillou [first contribution] - Nicolas M. Thiéry - Nils Bruin - Olivia Schwager - Paul Fili - Paul Masson - Paul Zimmermann - Peter Bruin - Raghukul Raman - Ralf Stephan - Richard Magner [first contribution] - Samuel Lelièvre - Sebastian Oehms - Simon Brandhorst - Simon King - Simon Xu - Sophia Elia - Steven Trogdon - Sébastien Labbé - Talia Blum - Thierry Monteil - Travis Scrimshaw - Victor Manero - Vincent Delecroix - Vishal Arul [first contribution] - Volker Braun - Wayne Peng - Xavier Caruso - Émile Nadeau * Release manager: Volker Braun. * We closed 348 tickets in this release. Merged in sage-9.0.beta0: #14068: David Coudert, Dima Pasechnik: nauty_geng is naughty [Reviewed by Dima Pasechnik] #14614: David Coudert: Improved is_triangle_free using bitfields [Reviewed by Dima Pasechnik] #17598: David Roe: fixed-mod p-adic integers as polynomial roots [Reviewed by Xavier Caruso] #21412: Frédéric Chapoton: Convert piecewise functions to SymPy [Reviewed by Travis Scrimshaw] #22408: Paul Masson, Eric Gourgoulhon: Make threejs / three.js the default 3d viewer instead of jmol [Reviewed by Dima Pasechnik] #22688: Frédéric Chapoton: Three.js: no plot if 'nan' occurs in JSON representation [Reviewed by Travis Scrimshaw] #24824: Dima Pasechnik: Update GLPK to 4.65 [Reviewed by François Bissey] #24894: Matthew Lancellotti, Chaman Agrawal: add super RSK algorithm to sage [Reviewed by Travis Scrimshaw] #25019: Vincent Delecroix: no error raised when dividing by (lazy) zero in AA or QQbar [Reviewed by Frédéric Chapoton] #25890: Simon Brandhorst: BinaryQF_reduced_representatives does not return representatives [Reviewed by Peter Bruin] #26379: Frédéric Chapoton: Comparisons between p-adics are quite slow [Reviewed by David Roe] #26496: David Einstein: Add the Habib Maurer algorithm for modular decomposition to graphs [Reviewed by David Coudert, Frédéric Chapoton] #26939: Matthew Lancellotti, George H. Seelinger: Adding Young's raising operators [Reviewed by Travis Scrimshaw] #27780: David Roe: _flint_rep_abs of zero causes segmentation fault [Reviewed by Travis Scrimshaw, Frédéric Chapoton] #28041: Samuel Lelièvre, Julian Rüth: py3: Docker images for python3-based Sage [Reviewed by David Roe] #28073: Marketa Slukova: Abstract Code Class [Reviewed by Dima Pasechnik, Durand Amaury] #28189: Vincent Delecroix: prefer "X in Fields()" rather than "X.is_field()" [Reviewed by Frédéric Chapoton] #28248: Jean-Philippe Labbé: Add .boundary_complex() method for simplicial polytopes [Reviewed by Laith Rastanawi] #28372: John Cremona: Update Cremona database of elliptic curves [Reviewed by Frédéric Chapoton] #28392: Nicolas M. Thiéry: dynamic_class: ignore Python 3's new __weakref__ class attribute [Reviewed by Erik Bray] #28410: Julian Rüth: Bug with docker images sagemath/sagemath-dev:develop and sagemath/sagemath:develop [Reviewed by Vincent Delecroix] #28426: John Palmieri: With Python 3 build, do not install python2 [Reviewed by Frédéric Chapoton] #28443: Hendrik Schrezenmaier: move remaining references from graphs/ to references/index.rst [Reviewed by Dima Pasechnik] #28464: Thierry Monteil: .is_inscribed() makes a bad assumption in Polyhedron [Reviewed by Jean-Philippe Labbé] #28469: Marc Mezzarobba: RBF(expr, rad) where expr is a symbolic expression ignores the radius [Reviewed by Vincent Delecroix] #28471: Frédéric Chapoton: remove deprecation in Hochschild complex [Reviewed by Travis Scrimshaw] #28472: John Cremona: Upgrade eclib to v.20190909 [Reviewed by John Palmieri] #28474: Paul Masson: Spherical Bessel functions have wrong phase for negative argument [Reviewed by Marc Mezzarobba] #28475: Frédéric Chapoton: some cleanup in matrix_sparse.pyx [Reviewed by Travis Scrimshaw] #28477: Frédéric Chapoton: py3: add combinat to the known passing folders [Reviewed by Travis Scrimshaw] #28478: David Roe: Include traceback when Sage crashes on startup [Reviewed by Julian Rüth] #28480: Thierry Monteil: Let OEIS sequences have unique representation [Reviewed by Frédéric Chapoton] #28481: David Roe: free_module method for finite fields, number fields and p-adics [Reviewed by Xavier Caruso] #28482: Travis Scrimshaw: Incorrect indexing for a regular matroid from a graphic matroid [Reviewed by Dima Pasechnik] #28488: John Cremona: Torsion subgroup of elliptic curves over number fields: more efficient method [Reviewed by Frédéric Chapoton] #28493: Antonio Rojas: Update to primecount 5.1 [Reviewed by Vincent Delecroix] #28495: Frédéric Chapoton: Faster is_directed_acyclic [Reviewed by Travis Scrimshaw] #28497: Julian Rüth: MR34: Fix some minor errors in docstrings [Reviewed by Samuel Lelièvre] #28498: Thierry Monteil: Memory leak in BasisExchangeMatroid.components [Reviewed by Vincent Delecroix] #28499: Vincent Delecroix: py3: typing should not be installed in Python 3 [Reviewed by Julian Rüth] #28503: Frédéric Chapoton: Bug in formal composition of maps [Reviewed by Xavier Caruso] #28504: Frédéric Chapoton: conversion of posets to libgap [Reviewed by Travis Scrimshaw] #28511: Dima Pasechnik: use --disable-maintainer-mode for configuring autoconf'ed packages if possible [Reviewed by Erik Bray] #28512: Nils Bruin: reading a large expression from a file takes quadratic time [Reviewed by Paul Zimmermann] #28514: Frédéric Chapoton: remove last _cmp_ in schemes [Reviewed by Travis Scrimshaw] #28516: Marc Mezzarobba: Interface Arb ζ, Γ, Lambert W and derivatives [Reviewed by Vincent Delecroix] #28521: David Coudert: Bug of cartesian_product_iterator in Python3 [Reviewed by Vincent Delecroix] #28522: Jean-Philippe Labbé: PolyhedralFan of Groebner fan is created twice [Reviewed by Frédéric Chapoton] #28524: Markus Wageringel: SyntaxError in sage_getargspec of introspection [Reviewed by Frédéric Chapoton] Merged in sage-9.0.beta1: #17468: Frédéric Chapoton: Strange integration error/hang with log(abs(sin(x))) [Reviewed by Peter Bruin] #25508: Jesper Noordsij: Implement reconstruction of binary quintics [Reviewed by Frédéric Chapoton] #26105: Julian Rüth, David Roe: Support base_morphism for hom(im_gens) [Reviewed by David Roe, Julian Rüth, Xavier Caruso] #27949: Kwankyu Lee: Pull out subfield() method from subfields() method. [Reviewed by Travis Scrimshaw] #28074: Markus Wageringel: Fix caching of Macaulay2 polynomial rings [Reviewed by Dima Pasechnik] #28082: Frederic Han: upgrade to giacpy_sage-0.6.8 [Reviewed by Markus Wageringel, Dima Pasechnik] #28187: Bruno Grenet: Make _derivative consistent [Reviewed by Travis Scrimshaw] #28416: Jori Mäntysalo: Add subjoinsemilattice [Reviewed by Frédéric Chapoton] #28459: Dima Pasechnik: spkg-configure.m4 for glpk [Reviewed by Isuru Fernando] #28470: Frédéric Chapoton: remove deprecated is_Set [Reviewed by Travis Scrimshaw] #28484: Travis Scrimshaw: Implement Orlik-Terao algebras [Reviewed by Frédéric Chapoton, Darij Grinberg] #28491: Frédéric Chapoton: still another harvest of typos [Reviewed by Thierry Monteil] #28492: Frédéric Chapoton: another wave of typos [Reviewed by Jori Mäntysalo] #28496: Frédéric Chapoton: cleanup of continued fraction [Reviewed by Alex J. Best] #28509: Jonathan Kliem: Polyhedron: bounding box does not catch empty polyhedron [Reviewed by Laith Rastanawi] #28510: Frédéric Chapoton: a tiny typo ticket [Reviewed by David Coudert] #28518: Frédéric Chapoton: some cleanup of len(xxx) = 0 in pyx files [Reviewed by Travis Scrimshaw] #28525: David Coudert: use smaller doctests in PasechnikGraph to avoid memory errors in patchbots [Reviewed by Dima Pasechnik, Frédéric Chapoton] #28526: David Coudert: infinite recursion in skew_hadamard_matrix when n=0 [Reviewed by Dima Pasechnik] #28527: Markus Wageringel: Character art concatenation takes quadratic time [Reviewed by Travis Scrimshaw] #28528: Marc Mezzarobba: Random minor improvements to the arb interface [Reviewed by Travis Scrimshaw] #28532: David Coudert: fix a bunch of warnings [Reviewed by Dima Pasechnik] #28534: Emmanuel Charpentier: Upgrade sqlite to 3.29.0 [Reviewed by Thierry Monteil] #28535: Miguel Marco: Fundamental group of simplicial sets with trivial 1-skeleton [Reviewed by John Palmieri] #28536: Frédéric Chapoton: pep cleanup of Brandt modules [Reviewed by David Coudert] #28537: Frédéric Chapoton: remove one deprecated thing in misc/cython [Reviewed by Travis Scrimshaw] #28542: Xavier Caruso: change behaviour of denominator for p-adics [Reviewed by Frédéric Chapoton] #28543: Eric Gourgoulhon: Improve computation of connection coefficients [Reviewed by Travis Scrimshaw] #28546: Frédéric Chapoton: fix a javascript warning [Reviewed by Travis Scrimshaw] #28547: Antonio Rojas: Remove hardcoded mathjax path in docs/conf.py [Reviewed by François Bissey] #28548: Frédéric Chapoton: various cleaning [Reviewed by Travis Scrimshaw] #28550: Steven Trogdon: DeprecationWarning: invalid escape sequence in docstrings when building with py3 [Reviewed by John Palmieri] #28551: Frédéric Chapoton: slightly faster Moebius matrix for posets [Reviewed by Travis Scrimshaw] #28556: Frédéric Chapoton: fix word_problem() [Reviewed by Travis Scrimshaw] #28558: Frédéric Chapoton: remove deprecation in modules [Reviewed by Travis Scrimshaw] #28560: Antonio Rojas: Ignore newlines in three.js version search [Reviewed by Frédéric Chapoton] #28563: Michael Jung: Manifolds: Dicts and Lists Copied [Reviewed by Travis Scrimshaw, Eric Gourgoulhon] #28565: Markus Wageringel: improve introspection of Macaulay2 interface [Reviewed by Franco Saliola] #28566: Markus Wageringel: improve conversions between Macaulay2 and Sage [Reviewed by Franco Saliola] #28568: Anton Leykin: implement _install_hints method for the Macaulay2 interface [Reviewed by Franco Saliola] #28570: Frédéric Chapoton: fix matrix inversion over ZZ [Reviewed by Vincent Delecroix, John Palmieri] #28571: Markus Wageringel: pass 'macaulay2' as argument to '_macaulay2_init_()' [Reviewed by Franco Saliola] #28579: Michael Jung: Wedge Product with Scalar Fields [Reviewed by Eric Gourgoulhon] #28582: Frédéric Chapoton: some cleaning for is_ring [Reviewed by Travis Scrimshaw] Merged in sage-9.0.beta2: #18957: Sophia Elia: ehrhart_polynomial should be made available for polytopes defined over QQ [Reviewed by Jean-Philippe Labbé, Frédéric Chapoton] #26403: Jeroen Demeyer: Compile Sage with Cython language_level=3str [Reviewed by Frédéric Chapoton] #28487: David Roe: Morphisms from p-adic rings and fields [Reviewed by Xavier Caruso] #28508: Marc Mezzarobba: An API for testing if a parent's element “are” real/complex numbers [Reviewed by Vincent Delecroix] #28567: Dima Pasechnik, Franco Saliola: allow user to specify strategy for Groebner basis computations with Macaulay2 [Reviewed by Markus Wageringel, Dima Pasechnik] #28569: John Palmieri: Internal links broken in poset catalog [Reviewed by Jori Mäntysalo] #28584: Paul Masson: Three.js: Add render_order option for transparent objects [Reviewed by Eric Gourgoulhon] #28587: Frédéric Chapoton: category of GL(1,ZZ) [Reviewed by Thierry Monteil] #28588: Martin Rubey: Submultiset is broken [Reviewed by Travis Scrimshaw] #28590: Franco Saliola: convert Macaulay2 graphs to Sage graphs [Reviewed by Dima Pasechnik] #28593: Frédéric Chapoton: cleaning backslash and refresh doc in one file [Reviewed by John Palmieri] #28594: Frédéric Chapoton: better categories for some groups [Reviewed by Vincent Delecroix] #28595: Frédéric Chapoton: convert some _cmp_ to _richcmp_ [Reviewed by Travis Scrimshaw] #28597: Frédéric Chapoton: better category for arithmetic subgroups of SL2(ZZ) [Reviewed by Travis Scrimshaw] #28607: Jonathan Kliem: CombinatorialPolyhedron: make f_vector a vector [Reviewed by Laith Rastanawi] Merged in sage-9.0.beta3: #20264: Vishal Arul, Edgar Costa, Richard Magner, Nicholas Triantafillou: Hasse-Weil Zeta function of a cyclic cover of P1 over finite fields. [Reviewed by Frédéric Chapoton] #27813: Sebastian Oehms: Implement _im_gens_ for LaurentPolynomial_mpair [Reviewed by Travis Scrimshaw] #28155: Miguel Marco, Victor Manero: Check for formality of GCDA's [Reviewed by Travis Scrimshaw, John Palmieri] #28159: Michael Jung: Vector Bundles [Reviewed by Eric Gourgoulhon, Travis Scrimshaw] #28463: Jonathan Kliem: .neighbors() error in polyhedron.representation [Reviewed by Jean-Philippe Labbé] #28531: Vincent Delecroix: bliss canonical labels ignores edge labels [Reviewed by David Coudert] #28562: Michael Jung: Tensor Fields: Better Zero Treatment [Reviewed by Eric Gourgoulhon, Travis Scrimshaw] #28600: Eric Gourgoulhon: Use standard notation for pullback and pushforward on manifolds [Reviewed by Michael Jung] #28601: Frédéric Chapoton: some typos and https [Reviewed by Thierry Monteil] #28603: Jonathan Kliem: CombinatorialPolyhedron: edge_graph -> vertex_graph [Reviewed by Laith Rastanawi] #28604: Jonathan Kliem: CombinatorialPolyhedron: ridge_graph -> facet_graph [Reviewed by Laith Rastanawi] #28619: John Palmieri: Reference manual doesn't build with --include-tests-blocks [Reviewed by Frédéric Chapoton] #28621: Jonathan Kliem: Add CombinatorialPolyhedron method to Polyhedron objects [Reviewed by Laith Rastanawi] #28625: Jonathan Kliem: Let CombinatorialPolyhedron handle f_vector of polyhedra [Reviewed by Laith Rastanawi] #28631: Sebastian Oehms: Implement polynomial factorization over universal cyclotomic field [Reviewed by Travis Scrimshaw] #28636: Frédéric Chapoton: refresh the pieri_factors file [Reviewed by Travis Scrimshaw] #28637: Frédéric Chapoton: remove deprecated alias for algebraic dependency [Reviewed by Travis Scrimshaw] #28642: Brent Baccala: Silence pyflakes warning [Reviewed by Frédéric Chapoton] Merged in sage-9.0.beta4: #18861: Jean-Philippe Labbé: Three apparently useless polyhedron methods [Reviewed by Frédéric Chapoton] #25390: Brent Baccala: multivariate factorization over QQbar [Reviewed by Travis Scrimshaw] #26922: Jonathan Kliem: Wrong f-vector for unbounded polyhedra [Reviewed by Jean-Philippe Labbé] #27866: Eric Gourgoulhon: Introduce graphics insets [Reviewed by Markus Wageringel] #28126: Jerry James: Fix interact in ECM interface [Reviewed by Markus Wageringel] #28182: Émile Nadeau: Linear algorithm for squares in words [Reviewed by Nadia Lafrenière, Travis Scrimshaw] #28334: John Palmieri: py3: polynomial_rational_flint.pyx problem [Reviewed by Steven Trogdon] #28414: Simon King: p_group_cohomology does not build on Python3 [Reviewed by John Palmieri] #28429: Jean-Philippe Labbé: Add the classical construction of the 120-cell [Reviewed by Jonathan Kliem] #28545: Frédéric Chapoton: some cleanup in mod 2 tests [Reviewed by Travis Scrimshaw] #28554: Michael Jung: Scalar Field Restrictions [Reviewed by Eric Gourgoulhon] #28572: Franco Saliola: conversion of quotient rings to macaulay2 [Reviewed by Markus Wageringel, Dima Pasechnik] #28591: Markus Wageringel: convert chain complexes from Macaulay2 to Sage [Reviewed by Frédéric Chapoton, Dima Pasechnik] #28622: John Palmieri: Patchbot and Python 3 doctest failures [Reviewed by Frédéric Chapoton, Eric Gourgoulhon] #28628: Michael Jung: Tensor Fields: set_restriction Behaviour [Reviewed by Eric Gourgoulhon] #28633: Jonathan Kliem: Add __copy__ method to backend normaliz of Polyhedron [Reviewed by Jean-Philippe Labbé, Travis Scrimshaw] #28643: Jonathan Kliem: Speed up incidence matrix of polyhedra [Reviewed by Laith Rastanawi] #28644: Frédéric Chapoton: unicode art fails for empty skew partition [Reviewed by Martin Rubey] #28649: John Palmieri: py3: flush output from FLINT error message [Reviewed by Dima Pasechnik, Frédéric Chapoton] #28650: Laith Rastanawi: Fix the dimension of PolyhedronFace [Reviewed by Jonathan Kliem] #28655: Laith Rastanawi: Fix typos in the method 'is_combinatorially_isomorphic' of Polyhedron [Reviewed by Frédéric Chapoton] #28658: Paul Masson: Three.js: Add popup menu for accessing additional options [Reviewed by Eric Gourgoulhon, Jean-Philippe Labbé] #28659: Vincent Delecroix: fix #28631 [Reviewed by Sebastian Oehms] #28661: Frédéric Chapoton: macOS SageMath.app wait for wrong message, significantly delaying notebook launch [Reviewed by Maverick Woo] #28662: Paul Masson: Missing edges when visualizing Polyhedra with threejs [Reviewed by Eric Gourgoulhon, Jean-Philippe Labbé] #28663: Frédéric Chapoton: remove deprecated stuff in padics [Reviewed by Travis Scrimshaw, David Roe] #28665: Martin Rubey: speed up StandardPermutations_descents.cardinality [Reviewed by Frédéric Chapoton] #28666: John Palmieri: dot2tex: typo in URL for graphviz [Reviewed by Frédéric Chapoton] #28667: Frédéric Chapoton: remove deprecated stuff in perfect matchings [Reviewed by Travis Scrimshaw] #28668: Laith Rastanawi: fix the base_ring of face_split [Reviewed by Frédéric Chapoton] #28670: Frédéric Chapoton: better category for matrix groups over finite rings [Reviewed by Travis Scrimshaw] #28673: John Palmieri: Do not create ipython symlink [Reviewed by Dima Pasechnik] Merged in sage-9.0.beta5: #27195: Martin Rubey, Travis Scrimshaw: slightly faster highest_weight_vectors_iterator [Reviewed by Travis Scrimshaw] #28245: Julian Ritter: Implement center of a HyperplaneArrangement [Reviewed by Jean-Philippe Labbé] #28502: Julian Rüth: MR36: Use Sphinx hash function [Reviewed by John Palmieri] #28506: Jonathan Kliem: Direct sum of polyhedron is broken, so is minkowski difference and face truncation [Reviewed by Jean-Philippe Labbé] #28574: Markus Wageringel: conversion of nested polynomial rings to Macaulay2 [Reviewed by Franco Saliola, Dima Pasechnik] #28578: Michael Jung: Mixed Forms Code Improvements [Reviewed by Eric Gourgoulhon] #28645: Chris Wuthrich: Error in precision of Tate elliptic curves over Qp [Reviewed by Edgar Costa] #28657: John Palmieri: Build Sage without "python" [Reviewed by Volker Braun] #28669: Eric Gourgoulhon: Unnecessary coordinate check while initializing an integrated curve [Reviewed by Karim Van Aelst] #28674: Markus Wageringel: RecursivelyEnumeratedSet: certified enumeration order [Reviewed by Travis Scrimshaw, Sébastien Labbé] #28678: Jonathan Kliem: Bug in CombinatorialPolyhedron of empty Lattice polytope [Reviewed by Jean-Philippe Labbé] #28681: Christian Nassau: py3: Construction of (A#A)+(A#A) fails for CombinatorialFreeModules [Reviewed by Markus Wageringel] #28687: John Palmieri: Demote scons to experimental [Reviewed by Frédéric Chapoton] #28690: Michael Jung: Vector Bundles: Section Module Name Fix [Reviewed by Travis Scrimshaw] #28691: Volker Braun: Xcode 11 breaks gfortran build [Reviewed by John Palmieri] #28693: Volker Braun: Update sagenb exporter 3.3 [Reviewed by Frédéric Chapoton, John Palmieri] #28699: Paul Masson: Three.js: Upgrade to r110 [Reviewed by Eric Gourgoulhon] #28702: Paul Masson: Three.js: Add option to render only single side of surface [Reviewed by Eric Gourgoulhon] Merged in sage-9.0.beta6: #15077: Bruno Grenet: Inconsistency in polynomial .reverse(n) [Reviewed by Frédéric Chapoton] #24108: Simon Brandhorst: quadratic_form_from_invariants() [Reviewed by Travis Scrimshaw] #25183: Jonathan Kliem: Bug in the associahedron object [Reviewed by Jean-Philippe Labbé, Travis Scrimshaw] #27089: David Coudert: CPLEXBackend.solver_parameter: Handle CPX_PARAMTYPE_LONG [Reviewed by Sébastien Labbé] #27302: Sebastian Oehms: Cubic Braid Groups [Reviewed by Travis Scrimshaw, Frédéric Chapoton] #27761: Lukas Stennes: DES Block Cipher [Reviewed by Friedrich Wiemer] #28104: Volker Braun: Openblas build failure [Reviewed by Frédéric Chapoton] #28382: David Coudert: Correct types in cplex backend [Reviewed by Sébastien Labbé] #28605: Jonathan Kliem: CombinatorialPolyhedron: replace attributes by methods [Reviewed by Laith Rastanawi, Jean-Philippe Labbé] #28606: Jonathan Kliem: CombinatorialPolyhedron: unbounded -> is_bounded [Reviewed by Laith Rastanawi, Jean-Philippe Labbé] #28652: Vincent Delecroix: Rework the constructor of PermutationGroupElement [Reviewed by Travis Scrimshaw] #28660: Frédéric Chapoton: Make Python 3 the default [Reviewed by John Palmieri, Eric Gourgoulhon] #28686: John Palmieri: Demote some optional packages to experimental [Reviewed by Frédéric Chapoton] #28689: David Coudert: py3: fix doctests with cbc [Reviewed by John Palmieri] #28700: Sophia Elia: Fixing missing optional flag in base_QQ.py [Reviewed by Sébastien Labbé] #28707: Eric Gourgoulhon: More control on the numerical ODE solver for integrated curves and geodesics [Reviewed by Florentin Jaffredo] #28708: David Coudert: 5 cplex doctests failed in cplex_backend.pyx [Reviewed by Sébastien Labbé] #28709: John Palmieri: Python executable in doctest/control.py [Reviewed by François Bissey] #28714: Dave Morris: clarify docstring of plot.colors.float_to_integer [Reviewed by Frédéric Chapoton] #28715: Frédéric Chapoton: remove some deprecated stuff in combinat after 23319 and 15597 [Reviewed by Travis Scrimshaw] #28717: Frédéric Chapoton: some cleanup in __init__ files [Reviewed by Travis Scrimshaw] #28719: Frédéric Chapoton: remove deprecated function aliases [Reviewed by Travis Scrimshaw] #28721: John Palmieri: Document sage-dist-helpers [Reviewed by Dima Pasechnik] #28725: Laith Rastanawi, Jonathan Kliem: fix lawrence_extension and lawrence_polytope for backend field [Reviewed by Laith Rastanawi, Jonathan Kliem] #28726: John Palmieri: py3: cysignals fails its test suite [Reviewed by Volker Braun] #28730: John Palmieri: cvxopt fails its test suite [Reviewed by François Bissey] #28734: Frédéric Chapoton: a few miscellanous details [Reviewed by Travis Scrimshaw] Merged in sage-9.0.beta7: #23816: Ben Hutz: implement left action of matrices on scheme points [Reviewed by Adam Towsley, Henry Talbott, Matt Torrence, Bianca Thompson] #27790: David Coudert: compatibility with cplex 12.9 [Reviewed by Sébastien Labbé] #27838: Frédéric Chapoton: 5 internet doctests failing in findstat.py [Reviewed by Sébastien Labbé] #28214: Brandon Gontmacher, Joey Lupo, Wayne Peng: Compute and display graph of nth-preimage tree [Reviewed by Adam Towsley] #28304: Markus Wageringel: add type information to _repr_ of Macaulay2 elements [Reviewed by Dima Pasechnik, Travis Scrimshaw] #28564: Michael Jung: Tensor Fields and Sections: Naming Consistencies [Reviewed by Eric Gourgoulhon, Travis Scrimshaw] #28675: Eric Gourgoulhon: Deprecate GraphicsArray import from sage.plot.graphics [Reviewed by Frédéric Chapoton] #28685: John Palmieri: Upgrade from beautifulsoup to beautifulsoup4 [Reviewed by Frédéric Chapoton] #28698: Kwankyu Lee: py3: HTML documentation for GlobalOptions does not show up correctly [Reviewed by Markus Wageringel] #28732: Dima Pasechnik: update sagetex to version 3.4 [Reviewed by John Palmieri, Karl-Dieter Crisman] #28736: Frédéric Chapoton: fix Texture for negative inputs [Reviewed by Jori Mäntysalo] #28737: Frédéric Chapoton: remove deprecated stuff in old coercion model [Reviewed by Travis Scrimshaw] #28748: Volker Braun: Python 3 debug build fails to start [Reviewed by Frédéric Chapoton] #28795: Volker Braun: Python 3 overflow in IntegerModRing pow [Reviewed by Frédéric Chapoton] #28797: Frédéric Chapoton: 32-bit Python 3 failures in combinat [Reviewed by Volker Braun] Merged in sage-9.0.beta8: #22380: François Bissey: Upgrade to cvxopt 1.2.x [Reviewed by Dima Pasechnik] #23720: Ben Barros, Ben Hutz: Plotting Mandelbrot Set for General Polynomials [Reviewed by Ben Hutz, Adam Towsley, A. S. Dasher] #23740: Ben Barros, Andrew O'Desky: Plotting Julia Sets for General Polynomials [Reviewed by Adam Towsley, Ben Hutz] #25701: Raghukul Raman, Ben Hutz: Implement Sieve algorithm for product_projective space [Reviewed by Adam Towsley, A. S. Dasher] #26816: Peter Bruin: Specify subgroups of Galois groups using generators [Reviewed by David Roe] #26817: Peter Bruin: GaloisGroup_subgroup.fixed_field() should always return an embedding [Reviewed by David Roe] #27154: Martin Rubey: speed_up_Burge [Reviewed by Frédéric Chapoton] #27408: David Coudert: Edge view for graphs [Reviewed by Jeroen Demeyer, Vincent Delecroix, Frédéric Chapoton] #27784: Michael Jung: Characteristic Classes on Vector Bundles [Reviewed by Travis Scrimshaw, Eric Gourgoulhon] #28170: Heidi Benham, Julia Cai, Leopold Mayer, Ben Hutz: enhance is_postcritically_finite, critical_point_portrait, and multiplier_spectra to work over number fields and finite fields [Reviewed by Meghan Grip, Talia Blum, John Doyle, Alexis Suki Dasher, John Michael Clark] #28213: Eric Zhu, Alex Galarraga, Bianca Thompson, Ben Hutz: Renaming rational_preperiodic_points() to all_preperiodic_points() [Reviewed by Jasmine Camero, Olivia Schwager, Anna Chlopecki, Simon Xu, Grayson Jorgenson, Juliano Levier-Gomes, Ben Hutz, Jamie Juul, Bella Tobin] #28489: Frédéric Chapoton: py3 + OS X: symbolic/expression.pyx [Reviewed by Volker Braun] #28501: Julian Rüth: MR35: Honour docbuild limits when building documentation in Dockerfile [Reviewed by Volker Braun] #28583: Markus Wageringel: unicode_art of Matrix_mod2_dense fails [Reviewed by Frédéric Chapoton] #28614: Jonathan Kliem: CombinatorialPolyhedron: length_* to n_* [Reviewed by Frédéric Chapoton] #28627: Thierry Monteil: Lazy OEIS sequences [Reviewed by Sébastien Labbé] #28680: Paul Masson: Three.js: Update documentation examples [Reviewed by Eric Gourgoulhon] #28694: Frédéric Chapoton: rich comparison for matrices [Reviewed by Travis Scrimshaw] #28705: Markus Wageringel: Fix conversion of Booleans in interfaces [Reviewed by Vincent Delecroix] #28716: Eric Gourgoulhon: Construction of a vector frame from a family of vector fields [Reviewed by Michael Jung] #28720: Kwankyu Lee: Method is_diagonalizable() should not raise an error for legitimate inputs [Reviewed by Vincent Delecroix] #28733: Dima Pasechnik: Reference manual SageTeX incorrect link [Reviewed by Karl-Dieter Crisman] #28739: Frédéric Chapoton: cleaning "space:" in the doc of combinat [Reviewed by Travis Scrimshaw] #28740: Frédéric Chapoton: fix typo convertable [Reviewed by Jori Mäntysalo] #28741: Jonathan Kliem: Lattice Polytopes: `compute_facets` does not check dimension when setting is_reflexive [Reviewed by Andrey Novoseltsev] #28744: Markus Wageringel: py3: add bytes_to_str in Octave interface [Reviewed by Frédéric Chapoton] #28747: Frédéric Chapoton: further "space:" cleaning outside of combinat [Reviewed by Travis Scrimshaw] #28749: Frédéric Chapoton: some middle-scale cleanup Returns ==> Return in the doc [Reviewed by Travis Scrimshaw] #28751: Frédéric Chapoton: enhance some calls to "while len" [Reviewed by Jori Mäntysalo, Léo Brunswic] #28756: David Coudert: py3: fix doctests with gurobi [Reviewed by Sébastien Labbé] #28758: Markus Wageringel: random output in a giacpy_sage doctest [Reviewed by Frédéric Chapoton] #28759: Frédéric Chapoton: py3: dot2tex + graphviz doctests failures [Reviewed by Sébastien Labbé] #28760: Frédéric Chapoton: py3: internet str vs bytes doctests failures [Reviewed by Sébastien Labbé] #28761: Frédéric Chapoton: py3: further fixes for misc [Reviewed by Sébastien Labbé] #28763: Thierry Monteil: DIMACS solver not workng with Python3 (7 glucose optional doctests failed) [Reviewed by Sébastien Labbé] #28764: Frédéric Chapoton: 2 internet doctest failed in hadamard_matrix.py [Reviewed by Sébastien Labbé] #28769: Eric Gourgoulhon: Scalar field raise AttributeError on show_identifiers call [Reviewed by Léo Brunswic] #28770: Jonathan Kliem: Polyhedra coercion of base rings fails for number fields [Reviewed by Léo Brunswic] #28779: Paul Fili: Error in "primes_of_bad_reduction" for DynamicalSystem [Reviewed by Adam Towsley] #28783: Frédéric Chapoton: fix opacity for add_condition in mono-coloured plot3d [Reviewed by Karl-Dieter Crisman] #28784: Léo Brunswic: Adding multiple symmetries and multiple contractions to tensors [Reviewed by Eric Gourgoulhon] #28790: Frédéric Chapoton: https in README.md [Reviewed by Jori Mäntysalo] #28791: Matthias Koeppe: Implement Feature without using sage.misc.cachefunc, sage.structure.unique_representation [Reviewed by François Bissey] #28793: Markus Wageringel: 2 more random doctest failures [Reviewed by Frédéric Chapoton] #28805: François Bissey, John Palmieri: Remove sagenb from DOC_DEPENDENCIES [Reviewed by Dima Pasechnik] #28807: Frédéric Chapoton: little typo ticket [Reviewed by Jori Mäntysalo] #28809: Frédéric Chapoton: cleanup src/sage/combinat/partition_shifting_algebras.py [Reviewed by Travis Scrimshaw] #28810: Frédéric Chapoton: small fix in regular expression for trac warning in sage/all.py [Reviewed by Markus Wageringel] #28811: Frédéric Chapoton: add hash for hypergeometric motives [Reviewed by Travis Scrimshaw] #28812: John Palmieri: #28795 followup: py2 doctest failure in pynac.pyx [Reviewed by Frédéric Chapoton] #28820: Dima Pasechnik: convert guava interface to libgap [Reviewed by Frédéric Chapoton] #28823: Markus Wageringel: str_to_bytes in math-readline script for Mathematica console [Reviewed by Frédéric Chapoton] #28824: Volker Braun: make doc-pdf race condition [Reviewed by Steven Trogdon] Merged in sage-9.0.beta9: #24398: Ralf Stephan: Document function initialization parameters [Reviewed by Markus Wageringel, Dima Pasechnik] #28258: Erik Bray: Fork errors in sage.misc.cython doctests [Reviewed by Volker Braun] #28289: Erik Bray: Settings in ipython_config.py can cause tests to fail [Reviewed by Markus Wageringel] #28476: Dave Morris: norm returns a negative number [Reviewed by Markus Wageringel] #28541: Xavier Caruso: bug in change_ring for polynomials [Reviewed by Marc Mezzarobba, Markus Wageringel] #28639: Jonathan Kliem: Polyhedron_normaliz: Initialize new cone from both Vrep and Hrep [Reviewed by Travis Scrimshaw] #28710: Dima Pasechnik: update sagenb to 1.1.3 [Reviewed by Markus Wageringel] #28792: Frédéric Chapoton: SageNB, message about removal [Reviewed by Jori Mäntysalo] #28801: Erik Bray: Fix ThreeJS script paths for Firefox on Windows [Reviewed by Travis Scrimshaw] #28818: Dima Pasechnik: from gap to libgap in strongly_regular_db [Reviewed by David Coudert] #28821: Frédéric Chapoton: get rid of filter [Reviewed by Travis Scrimshaw] #28822: Brent Baccala: Use assert on a condition that should always be true [Reviewed by Markus Wageringel] #28825: Frédéric Chapoton: refresh the file combinat/tuple [Reviewed by Travis Scrimshaw] #28826: Markus Wageringel: a few typos [Reviewed by Frédéric Chapoton] #28830: Frédéric Chapoton: cleaning the file dlx.py [Reviewed by Travis Scrimshaw] #28833: Frédéric Chapoton: ResourceWarning: unclosed file with SAGE_DEBUG=yes [Reviewed by Volker Braun] #28834: John Palmieri: Doctesting: don't test SageNB files unless SageNB has been installed [Reviewed by Frédéric Chapoton] #28835: John Palmieri: Remove python3-known-passing.txt and the corresponding parts of the Makefile [Reviewed by Dima Pasechnik] #28839: Frédéric Chapoton: adding a minimal lgtm.yml file [Reviewed by Erik Bray] #28840: Frédéric Chapoton: pari 2.11.2 [Reviewed by François Bissey] #28841: Frédéric Chapoton: fix some little details in doc [Reviewed by Travis Scrimshaw] #28843: Martin Rubey: typo ticket: explicitely -> explicitly [Reviewed by Travis Scrimshaw] Merged in sage-9.0.beta10: #12679: Frédéric Chapoton: rewrite Matrix_modn_sparse and vector_modn_sparse code so that the modulus is 64-bit on 64-bit platforms [Reviewed by Travis Scrimshaw] #15645: Kiran Kedlaya: Raise coverage of schemes/hyperelliptic_curves/monsky_washnitzer.py to 100% [Reviewed by Frédéric Chapoton] #17339: Darij Grinberg, Jonathan Kliem: Polyhedron class mistreats empty inputs [Reviewed by Travis Scrimshaw] #26332: Thierry Monteil, Marc Mezzarobba: Remove the ore_algebra optional package [Reviewed by Frédéric Chapoton] #28326: Henri Derycke: Restore default term state after printing environment variables [Reviewed by Erik Bray] #28329: Michael Orlitzky: Suppress warnings from failed psutil statistics collection [Reviewed by Dima Pasechnik, Markus Wageringel] #28355: Gerardo E Zelaya Eufemia, Kevin Lui: Allow precision to be passed into the elliptic_j function [Reviewed by Kevin Lui, Frédéric Chapoton] #28374: Julian Rüth: MR31: Build documentation artifacts during docker build [Reviewed by Samuel Lelièvre] #28507: Julian Rüth: MR37: Update symlinks in the docker -dev image [Reviewed by Samuel Lelièvre] #28533: Isuru Fernando: Remove adding /usr/include/$MULTI_ARCH to CPATH [Reviewed by Dima Pasechnik] #28596: Erik Bray: Fix jmol permissions [Reviewed by John Palmieri] #28613: Jonathan Kliem: CombinatorialPolyhedron: attributes, H -> facet_names; V -> Vrep [Reviewed by Travis Scrimshaw] #28632: Frédéric Chapoton: Implement Eulerian Polynomials and Numbers [Reviewed by Travis Scrimshaw] #28684: Edgar Costa: Fixing precision of Tate elliptic curves over Qp [Reviewed by Chris Wuthrich] #28743: Jonathan Kliem: Lattice Polytopes: Implement incidence matrix [Reviewed by Frédéric Chapoton, Laith Rastanawi] #28762: Sébastien Labbé: 2 doctests failed in cmdline.py related to rst2ipynb [Reviewed by Travis Scrimshaw] #28766: Jonathan Kliem: Implement incidence matrix for cones [Reviewed by Laith Rastanawi] #28789: Kiran Kedlaya: Zeta functions of hyperelliptic curves giving wrong answers [Reviewed by Frédéric Chapoton] #28808: Frédéric Chapoton: failing internet doctest in repl/load.py [Reviewed by Travis Scrimshaw] #28819: Markus Wageringel: disable problematic external doctests [Reviewed by Kwankyu Lee] #28828: Jonathan Kliem: Attributes of polyhedra are exposed [Reviewed by Laith Rastanawi] #28829: Erik Bray: suitesparse does not build on Cygwin [Reviewed by François Bissey] #28832: Erik Bray, François Bissey: suitesparse spkg does not properly use a DESTDIR installation [Reviewed by François Bissey, Erik Bray] #28842: Eric Gourgoulhon: Uncaught AttributeError in integrate() [Reviewed by Frédéric Chapoton] #28844: Frédéric Chapoton: some details in heegner.py [Reviewed by Jori Mäntysalo] #28845: Frédéric Chapoton: cleaning tableau residues.py [Reviewed by Travis Scrimshaw] #28847: Frédéric Chapoton: better unicode art for chain complex [Reviewed by Markus Wageringel] #28849: Frédéric Chapoton: clean the doc of Monte Carlo integration [Reviewed by Travis Scrimshaw] #28850: Jonathan Kliem: Polar of polytopes does not check if polytope is full-dimensional [Reviewed by Travis Scrimshaw] #28851: Jonathan Kliem: Polar of integer polytopes does not respect backend [Reviewed by Travis Scrimshaw] #28858: Miguel Marco: Fix frobby interface with python3 [Reviewed by Frédéric Chapoton] #28859: Frédéric Chapoton: some enhanced tests in schemes folder [Reviewed by Travis Scrimshaw] #28860: Frédéric Chapoton: some trivial fixes for space around = in combinat [Reviewed by Travis Scrimshaw] #28861: Frédéric Chapoton: change some returns to return [Reviewed by André Apitzsch] #28863: Sébastien Labbé: 1 doctest failed in thematic_tutorials/linear_programming.rst [Reviewed by David Coudert] #28872: Jonathan Kliem: Wrong usage of normaliz/pynormaliz makes sage crash hard [Reviewed by Travis Scrimshaw] #28874: Jonathan Kliem: Meaningful errors for immutable graphs [Reviewed by Travis Scrimshaw] #28875: Frédéric Chapoton: use https in setup.py [Reviewed by Travis Scrimshaw] #28876: Jonathan Kliem: Polyhedron: Let affine hull fully respect backend [Reviewed by Laith Rastanawi] #28877: Emmanuel Charpentier: Upgrade R to 3.6.2 [Reviewed by Erik Bray] #28881: Frédéric Chapoton, Travis Scrimshaw: refresh the shuffle algebra file [Reviewed by Travis Scrimshaw, Frédéric Chapoton] #28887: Frédéric Chapoton: remove some deprecated function aliases [Reviewed by Travis Scrimshaw] #28888: Frédéric Chapoton: refresh the file ell_finite_field [Reviewed by Jori Mäntysalo] #28891: Markus Wageringel: character art and sympy-conversion of symbolic series [Reviewed by Frédéric Chapoton] Merged in sage-9.0.rc0: #28094: Brent Baccala: support function fields in characteristic zero [Reviewed by Travis Scrimshaw, Kwankyu Lee] #28309: David Coudert: improvement of method allow_multiple_edges [Reviewed by Jonathan Kliem] #28654: Jonathan Kliem: A Bug in the backend `field` [Reviewed by Laith Rastanawi] #28837: David Coudert: Flow polytope does not work as expected on Multi-Digraphs [Reviewed by Jonas Frede] #28885: Dima Pasechnik: spkg-configure for cliquer [Reviewed by Isuru Fernando] #28896: Jonathan Kliem: Graphs: Move common methods of backends to CGraph [Reviewed by David Coudert] #28898: Frédéric Chapoton: pep cleanup in quivers/ [Reviewed by Travis Scrimshaw] #28900: Frédéric Chapoton: some details in schemes/ [Reviewed by Travis Scrimshaw] Merged in sage-9.0.rc1: #28676: Matthias Koeppe: Pass --with-python=sage-python23 to Singular configure [Reviewed by Dima Pasechnik] #28878: Erik Bray: psutil doesn't build on recent Cygwin [Reviewed by Volker Braun] #28910: Samuel Lelièvre: Update "Maintained" to 2020 for DockerHub README [Reviewed by Julian Rüth]