Releases: sagemath/sage
Releases · sagemath/sage
10.6.beta4
What's Changed
- adding the category keyword to padic rings and fields classes by @fchapoton in #39302
- simplify many range(0,n) to range(n) by @fchapoton in #39306
- [DOC] Allow Sphinx PDF build to reflow long decimal expansions in code-blocks to avoid them extending beyond page limits by @jfbu in #39325
- some changes about dict in combinat (ruff PLC0206) by @fchapoton in #39332
- some ruff suggestions in algebras/ by @fchapoton in #39333
- Graph Plotting updates by @thecaligarmo in #38823
- provide a class for partitions with bounded length and minimal part by @mantepse in #38904
- adding an example of semiring by @fchapoton in #38965
- Add Meson-specific settings to vscode settings by @tobiasdiez in #39008
- change ore_algebra package to latest version by @fchapoton in #39123
- Fix doctesting with Python 3.13 by @antonio-rojas in #39147
- add parameter
forbidden_vertices
to some connectivity methods by @dcoudert in #39151 - Mark several tests as random to avoid test failure by @user202729 in #39153
- Update conda to use Python 3.12, drop 3.9 and 3.10 by @tobiasdiez in #39164
- Addition of Kähler algebras as a category by @25shriya in #39168
- Define iter method in iterator types by @antonio-rojas in #39182
- Refactor produce_latex_macro by @user202729 in #39184
- Fix find_replacements with Python 3.13 by @antonio-rojas in #39185
- Declare Python 3.13 as supported in sagelib by @antonio-rojas in #39188
- Fix
spyx_tmp()
cleanup. by @tornaria in #39201 - some care in
src/sage/graphs/comparability.pyx
by @dcoudert in #39220 - faster bidirectional dijkstra using pairing heap by @dcoudert in #39228
- add some typing annotations to gens methods (-> tuple) by @fchapoton in #39233
- minor annotation details in posets to please mypy by @fchapoton in #39252
- some type annotations in modular folder by @fchapoton in #39253
- Fix tests with scipy 1.15 by @antonio-rojas in #39261
- Remove old deprecations in
algebras
andcategories
by @tobiasdiez in #39263 - add parameter immutable to generators in
sage/graphs/digraph_generators.py
(part 1) by @dcoudert in #39264 - Upgrade dependency requirements in accordance with Spec 0 by @tobiasdiez in #39268
- return correct error message when trying to add/delete vertex/edge from a static graph by @dcoudert in #39271
- Fix import duplication in
sage.rings.all
by @tobiasdiez in #39277 - Meson: build groups even without gap by @tobiasdiez in #39278
- fix and activate the ruff check for F811 by @fchapoton in #39281
- Fix tests for Python 3.13 by @user202729 in #39282
- Remove failing modular ci tests by @tobiasdiez in #39284
- Fix the new release workflow by escaping special characters by @kwankyu in #39288
- Workaround to allow flint to be compiled with numpy 2 by @user202729 in #39291
- Fix segmentation fault in singular interface code by @user202729 in #39293
- small cleanup in tropical files by @fchapoton in #39298
- Using a new functions in libbraiding in zariski_vankampen by @enriqueartal in #39301
- let the categories handle "is_commutative" for rings by @fchapoton in #39303
- fixing some ruff PLR warnings by @fchapoton in #39305
- use memory allocator in
sage/coding/binary_code.pyx
by @dcoudert in #39312 - partial pep8 cleanup in Lie conformal algebras by @fchapoton in #39315
- use memory allocator in
sage/combinat/designs/
by @dcoudert in #39316 - Implement the chi function in sage.crypto.sboxes by @rusydi in #39322
- less use of ParentWithGens by @fchapoton in #39324
- fix a bunch of typos and add some spaces after commas by @fchapoton in #39330
New Contributors
Full Changelog: 10.6.beta3...10.6.beta4
10.6.beta3
What's Changed
- Allow Cython compilation to open a web browser containing the annotated HTML file by @user202729 in #38946
- Meson: find more dependencies via pkg-config by @tobiasdiez in #38993
- Correctly print import errors in
sage.all
by @tobiasdiez in #39011 - Make Sequence pretty-printed in IPython by @user202729 in #39027
- Fix more ruff issues in ̀ sage.manifolds` by @tobiasdiez in #39099
- Minor docfix of interpolation() method by @user202729 in #39127
- simplify some call of isinstance in pyx files by @fchapoton in #39146
- Mark artin_symbol doctest as random to avoid failure by @user202729 in #39157
build/pkgs
: Removelibtheora
by @gmou3 in #39175- Improve Meson CI workflow by @tobiasdiez in #39176
- Fix test failure with giac 1.9.0.998 by @antonio-rojas in #39178
- Fix CremonaDatabase constructor by @kwankyu in #39179
- Fix tests output for Python 3.13 by @antonio-rojas in #39187
- Update the copyright year in README.md by @ekwankyu in #39190
- Some improvements to findstat._submit by @user202729 in #39193
- Reimplement release creation workflow by @kwankyu in #39194
- Pytest: Improve doctest integration by @tobiasdiez in #39206
- Fix docstring formatting to use raw string literals in multiple files by @tobiasdiez in #39209
- Switch devcontainer to use meson by @tobiasdiez in #39210
- improve graph traversal methods by @dcoudert in #39217
- Faster conversion from numpy array to matrix mod 2 by @user202729 in #39219
- Remove outdated note from docstring of
cliques_maximal
by @Ordoviz in #39222 - deprecate fully the auld class IntegralDomain by @fchapoton in #39227
- fixing pycodestyle E222 in many cython files by @fchapoton in #39229
- refresh MacMahon Omega file by @fchapoton in #39230
- fix and activate some checks in ruff-minimal by @fchapoton in #39231
- minor tweaks in Ore polynomials by @fchapoton in #39232
- fixing a few typos by @fchapoton in #39235
- minor details in modular symbols / boundary by @fchapoton in #39236
- Modify build using meson guideline by @user202729 in #39238
New Contributors
Full Changelog: 10.6.beta2...10.6.beta3
10.6.beta2
What's Changed
- Adopt the “time window-based” policy for support of Python versions from Spec-0 by @tobiasdiez in #35403
- Rename PolynomialRing_general to PolynomialRing_generic by @grhkm21 in #38207
- add a pairing heap data structure by @dcoudert in #39046
- Allow more rings to be used with libsingular & rework signal detection system by @user202729 in #39075
- cython-lint cleanup in matroids by @fchapoton in #39108
- Fix a crash when trying to build very large Reed-Muller codes by @jlavauzelle in #39110
build/pkgs/ccache
: Update to 4.10.2 by @gmou3 in #39119build/pkgs/cmake
: Update to 3.31.2 by @gmou3 in #39120- some care for pep8 E262 (comments) by @fchapoton in #39125
- More information on build from source using meson by @user202729 in #39129
- avoid some imports of rings.Ring by @fchapoton in #39131
- fixing pep8 E203 in pyx files by @fchapoton in #39132
- Even less integral domain by @fchapoton in #39133
- a few details in master reference file by @fchapoton in #39134
- Fix ginac's ratlog method so log(int(0),2) does not hang by @DaveWitteMorris in #39135
- Meson: install
__init__
files by @tobiasdiez in #39139 - Fix meson github check by @tobiasdiez in #39140
- fix linter warnings in sage_setup and sage_docbuild by @fchapoton in #39143
- Don't use count as a positional argument in re.sub by @antonio-rojas in #39145
- Remove executable flags from many Python files by @user202729 in #39149
- Fix a bug in Khuri-Makdisi small model of Jacobian by @kwankyu in #39150
- Return True instead of None to avoid cachefunc being useless by @user202729 in #39174
Full Changelog: 10.6.beta1...10.6.beta2
10.6.beta1
What's Changed
- Replace bootstrap-conda by grayskull and update conda lock files by @tobiasdiez in #37447
- Implement period_lattice for elliptic curves over RealField, ComplexField, etc. by @user202729 in #38474
- remove a spurious adding of the same constraint twice by @dimpase in #38844
- use
sig_realloc
in methodOP_make_set
by @dcoudert in #38936 - Some documentation improvement by @user202729 in #38943
- is_t_design needs to verify that every t-tuple is in at least one block by @DaveWitteMorris in #38973
- ⬆️ Bump codecov/codecov-action from 4 to 5 by @dependabot in #38990
- Document RealIntervalField default printing configuration by @user202729 in #38997
- Allow construct RIF element from question-style string by @user202729 in #38998
- implement elliptic-curve point addition for general rings by @yyyyx4 in #39036
- graphs: implementation of linear-time algorithm for modular decomposition by @cyrilbouvier in #39038
- partial pep8 cleanup in plot and plot3d by @fchapoton in #39045
- Replace Python 2 'long' with Python 3 'int' by @user202729 in #39091
- Fix numerical_integral with parameters by @DaveWitteMorris in #39094
- hot-fix for the linter by @fchapoton in #39095
- Add cython.binding(True) to occurrences of sage_wraps by @user202729 in #39101
- Bugfix for erasure decoder of Reed-Solomon codes by @jlavauzelle in #39103
- two more ruff checks activated by @fchapoton in #39105
- cython-lint fixes in misc/ by @fchapoton in #39109
- build/pkgs/planarity/spkg-configure.m4: update header check by @orlitzky in #39111
- cython-lint cleanup for one pxi file in matrix by @fchapoton in #39113
- Remove unnecessary dummy lines in doctests by @user202729 in #39114
- first step of removal of IntegralDomain by @fchapoton in #39115
- more spkg-config.m4 and metadata for python packages by @dimpase in #39121
New Contributors
- @jlavauzelle made their first contribution in #39103
Full Changelog: 10.6.beta0...10.6.beta1
10.6.beta0
What's Changed
- some work on deformed Burau matrix by @fchapoton in #38987
- simplify isogeny-enumeration code following #35949 by @yyyyx4 in #39019
- one more method in FHM-triangles by @fchapoton in #39020
- fix all ruff warnings SIM101 by @fchapoton in #39022
- Fix the right-border on unicode tables by @orlitzky in #39023
- Automated the generation of changelogs in text format by @soham30rane in #39024
- Numerical evaluation of modular form & implement conversion of more modular form spaces to Pari by @user202729 in #39028
- Remove pipfile by @tobiasdiez in #39031
- Some documentation clean-up by @user202729 in #39043
- provide default argument for monomial_coefficients by @mantepse in #39044
- pep8 cleanup in libs by @fchapoton in #39048
- Fixing typo with
$g_i^{-1}$ implementation in Yokonuma-Hecke algebras. by @tscrim in #39049 - Fix exactify caching when interrupted by @user202729 in #39050
- small-scale refresh for the sandpile file by @fchapoton in #39053
- pep8 cleanup for structure/ by @fchapoton in #39054
- pep8 cleanup in repl/ and sat/ by @fchapoton in #39055
- miscellanous pep8 cleanup by @fchapoton in #39056
- Make multivariate ideal reduce() work on integer by @user202729 in #39059
- Add degree checks for Jacobian models by @kwankyu in #39066
- unbreak "--disable-sage_conf" by @dimpase in #39067
- Fix the issue number format in deprecation comment by @kwankyu in #39074
- linting : some fixes for pyx files in modular by @fchapoton in #39084
- remove final empty lines in pxd/pxi files by @fchapoton in #39087
- Add dependency groups to
pyproject.toml
by @tobiasdiez in #37446 - fix green function in projective_ds by @bhutz in #38161
- Hashing affine group elements by @tscrim in #38508
- Use the faster libgiac interface for "giac" integration by @orlitzky in #38686
- Fast conversion from numpy ndarray to vector by @user202729 in #38834
- Improve Matrix_mod2_dense solve_right performance by @maple3142 in #38843
- Remove imports from
gsl.all
by @tobiasdiez in #38874 - provide the tilde species of a species by @mantepse in #38883
- libbraiding version bump by @miguelmarco in #38887
- Implemented methods pertaining to the canonical partition of a matching covered graph by @janmenjayap in #38892
- Remove jupyter_execute directory after doc build finishes by @kwankyu in #38895
- Fix ruff issues in
manifolds
by @tobiasdiez in #38909 - check for E302 by @fchapoton in #38920
- moving "is_integrally_closed" to the category setup. by @fchapoton in #38927
- src/sage/env.py: don't pass if mismatched SAGE_ROOT is None by @orlitzky in #38935
- Fix flaky simplicial set test by @user202729 in #38940
- Allow specifying arguments to Cython cell_magic by @user202729 in #38945
- adding the ring of quantum-valued polynomials by @fchapoton in #38952
- Overwrote methods concerning loops for a matching covered graph by @janmenjayap in #38955
- Hide GAP finiteness warnings during isomorphism check by @orlitzky in #38956
- Allow powers of SignGroup elements to live in other parents by @behackl in #38958
- Do not allow order of AbelianGroup generator to be negative by @DaveWitteMorris in #38970
- Fix build of meataxe extension with meson by @antonio-rojas in #38972
- allow incomparable labels in SetPartition by @mantepse in #38974
- support left and right actions for species by @mantepse in #38975
- a few PERF4 suggestions by ruff fixed by @fchapoton in #38976
- minor details in some pyx files in sets by @fchapoton in #38977
- avoid using isinstance IntegralDomain in modules by @fchapoton in #38978
- Allow python ints in sage.groups.generic.has_order by @DaveWitteMorris in #38980
- Use meson as backend for numpy.f2py by @tobiasdiez in #38983
- Fix detection of tdlib and mcqd with meson by @antonio-rojas in #38984
- tentative of free-Algebra functor by @fchapoton in #38989
- many single-backticks should be double-backticks by @DaveWitteMorris in #38991
- Fix crash when specify invalid base for RR and RIF construction by @user202729 in #39001
- Fix a few minor typos by @tobiasdiez in #39014
- hot-fix for ruff linter by @fchapoton in #39021
New Contributors
- @soham30rane made their first contribution in #39024
- @bhutz made their first contribution in #38161
- @maple3142 made their first contribution in #38843
- @behackl made their first contribution in #38958
Full Changelog: 10.5...10.6.beta0
10.5
10.5.rc2
What's Changed
- Introduce negated optional tag by @kwankyu in #38810
- Fix meson build by adding missing files by @tobiasdiez in #38982
- CI Fix: Do not upload logs artifact for the default job in CI Linux by @kwankyu in #39003
- the ECM patch breaks some macOS installations by @dimpase in #39040
Full Changelog: 10.5.rc1...10.5.rc2
10.5.rc1
10.5.rc0
What's Changed
- Addition of Chow ring ideal and Chow ring classes by @25shriya in #38281
- number_field_elements_from_algebraics: Fix CyclotomicField embedding when embedding=False by @user202729 in #38441
- Include TESTS in doc preview for PRs by @kwankyu in #38449
- Dokchitser: Pass internal parameter over properly by @user202729 in #38482
- Eisenstein series: Small documentation improvement by @user202729 in #38484
- Implement dual subdivision and weight vectors for tropical variety by @verreld7 in #38536
- Improve conda setup by @tobiasdiez in #38728
- Introduced the class
MatchingCoveredGraph
by @janmenjayap in #38742 - non recursive version of method
gomory_hu_tree
for graphs by @dcoudert in #38791 - libsemigroup upgrade to 2.7.3 by @dimpase in #38875
- Follow-up to #38822: Add missing package update in build/pkgs by @soehms in #38885
- src/sage/interfaces/singular.py: use GNU Info to read Singular's info by @orlitzky in #38899
- a few details in combinat, following ruff and pycodestyle by @fchapoton in #38903
- Update the gcc spkg to version 14.2.0 using iains/gcc-14-branch by @culler in #38905
- Format function headers around
=
and,
by @gmou3 in #38907 - Don't (mis)use
prec_words_to_bits()
by @tornaria in #38908 - Meson: minor revision by @tobiasdiez in #38910
- Replace division by zero with +-inf by @tobiasdiez in #38911
- Replace deprecated/removed mem_fun_ref by @tobiasdiez in #38912
- Meson: Improve handling of dependencies by @tobiasdiez in #38913
- Replace
os.uname
by more universalplatform.system
by @tobiasdiez in #38914 - Remove
register
macro in Ginac by @tobiasdiez in #38915 - Fix Ginac cast error by @tobiasdiez in #38916
- Allow optional elliptic curve data from database_cremona_ellcurve by @vbraun in #38917
- preserve backend when using pickling/unpikling by @dcoudert in #38919
- fixing ruff E714 by @fchapoton in #38921
- remove the last use of PrincipalIdealDomain by @fchapoton in #38922
- remove some deprecated functionality by @yyyyx4 in #38923
- avoid using "is_prime_field" in dynamics by @fchapoton in #38925
- Pathlib for 3 files by @fchapoton in #38926
- expunge is_commutative from plural by @fchapoton in #38930
- OS X: do not use -ld_classic by @jhpalmieri in #38931
- Artifacts v4 by @fchapoton in #38932
- keep meson.build file for ext/interpreters by @dimpase in #38934
- Sanity check parent of Vector_numpy_integer_dense by @user202729 in #38938
- Details yang baxter by @fchapoton in #38941
- deprecate is_generator for is_gen by @fchapoton in #38942
- no longer ignore errors in method
union
ofDisjointSet
by @dcoudert in #38944 - move spkg tarballs from user.ox.ac.uk by @dimpase in #38948
- Fix configure script generated by pkgconf-2.3.0 by @vbraun in #38954
- rebase sage_autodoc to sphinx 8.1.3 by @kiwifb in #38957
- Iteration over infinite abelian groups by @DaveWitteMorris in #38961
- Disallow scaling of quaternion fractional ideals by zero by @S17A05 in #38963
- Drinfeld Modules: Default to zero endomorphism in
.hom
and avoid inversion of zero endomorphism by @S17A05 in #38964 - Clean up Cygwin remnants by @orlitzky in #38966
- Implement basic multivariate polynomial species by @Newtech66 in #38446
Full Changelog: 10.5.beta9...10.5.rc0
10.5.beta9
What's Changed
- Roots of polynomials mod n by @kylehofmann in #38722
- move orientation methods from
graph.py
toorientations.py
by @dcoudert in #38809 - Remove redundant modulo operation in vector_modn_dense by @user202729 in #38835
- fix issue #38832 about
canonical_label
in bipartite graphs by @dcoudert in #38842 - Add conversion dictionaries to trig.py by @janekj2727 in #38853
- Add LaTeX representation for function fields by @vincentmacri in #38854
- autopep8 fixes for E302 in matrix,rings,groups,dynamics by @fchapoton in #38858
build/pkgs/matroid_database
: mark as math by @gmou3 in #38859- Fix test if SAGE_ROOT is not defined by @antonio-rojas in #38860
- remove some unused variables by @fchapoton in #38861
- some spaces around % in pyx files by @fchapoton in #38862
- Fix testing of installed rst files by @antonio-rojas in #38863
- Fix build of coxeter3 extension with meson by @antonio-rojas in #38866
- Fix duplicate install of config.py in meson build by @antonio-rojas in #38867
- src/sage/parallel/map_reduce.py: fixup start_workers() test case by @orlitzky in #38873
- minor details in piecewise functions by @fchapoton in #38876
- Update Pypi.io domain (301 permanent redirect) by @Carreau in #38877
- using Parent in ring extensions by @fchapoton in #38881
- src/sage: revert "touch libgap consumers" by @orlitzky in #38882
- be explicit about messages by @mantepse in #38894
- add "# long time" to slow-ish composite isogeny doctest by @yyyyx4 in #38901
- Compute composite degree (separable) isogenies of EllipticCurves by @grhkm21 in #35949
build/pkgs/pari
: Update to 2.15.5 by @mkoeppe in #38629- Update gperftools integration for python3/musl by @orlitzky in #38675
matroids
: Addcertificate
argument tois_valid
by @gmou3 in #38711- a few simplified isinstance (ruff SIM101) by @fchapoton in #38817
- let the category setup handle the ideals by @fchapoton in #38821
- Graph tikz method fixup by @seblabbe in #38847
- various small details in combinat by @fchapoton in #38857
New Contributors
- @janekj2727 made their first contribution in #38853
- @Carreau made their first contribution in #38877
Full Changelog: 10.5.beta8...10.5.beta9