Sage 10.9.beta8 released

115 views
Skip to first unread message

Volker Braun

unread,
Mar 23, 2026, 5:44:05 PMMar 23
to sage-release
As always, you can get the latest beta version from the "develop" git branch. Alternatively, the self-contained source tarball is at http://www.sagemath.org/download-latest.html

Due to a hardware issue we currently can't add new tarballs to the mirrors, so either you download from source (and cross fingers that nobody swizzled isomorphic-but-not-identical tarballs) or use my server (sagepad.org) temporarily via environment variables, which roughly amounts to

./bootstrap -u http://sagepad.org/spkg/upstream/configure/
./bootstrap -d
        ./configure
make -j8 start SAGE_SERVER=http://sagepad.org

Happy building! ;)


31a24ce2574 (tag: 10.9.beta8, github/develop) Updated SageMath version to 10.9.beta8
c13b142da2f gh-41864: a few details about usage of all and any
9b117738f0e gh-41862: Update ECL directory path to version 26.3.26 in meson.build
85c0ee18fe4 gh-41834: Changed old docs link to the current one (../meson.html to ../source.html).
b26da03d132 gh-41828: Fix oddity in formatting string inside `get_coercion_model().analyse()`.
71bc6c6ac4c gh-41827: src/sage/rings/{complex,real}_arb.pyx: fix characteristic() type
3b1af0f3eaf gh-41821: Move local references from sf/jack.py and ncsf_qsym/qsym.py to master bibliography
5dd0e4ccbea gh-41820: Update copyright year to 2026
63c3d60bf4a gh-41819: allow GCC version 16
17dd60cddfe gh-41817: optimize _from_dict to single pass when coerce=True and remove_zeros=True
69cc8e24c80 gh-41805: annotate heegner.py
d947f2d5377 gh-41803: Update database_knotinfo to release 2026.3.1
ad0290f20e2 gh-41798: Fix test failures with singular 4.4.1.p5
e94f3cb18be gh-41794: Sort divisor points
20e135084af gh-41792: Fix rounding residues in CubeGraph positions
cbf25c30d7e gh-41791: Drop obsolete test that fails with ipython 9.10
c3ddcace3d3 gh-41790: Correct DryGASCON256 S-box table
3c82d6ab9ca gh-41789: avoid isinstance(., CommutativeRing)
a865158dc41 gh-41785: Fix generic graph LaTeX vertex styling
e0869b4a601 gh-41783: improve the docstring of weighted_vector_compositions
b98d8886140 gh-41778: Fix pari SVP to use qfminim(m=1) for memory efficiency and clarify do…
80bd4e9c069 gh-41776: Restore support for SAGE_DOCBUILD_OPTS
dac5cd9b43e gh-41773: src/combinat: move local references to global index (parking_functions, perfect_matching)
3218d5b0134 gh-41770: simplify returns
067e4013dc9 gh-41768: some care for ruff RET in combinat
4f84c1811c6 gh-41767: improved efficiency
251a9c65c1f gh-41766: Fix command syntax for GCL FriCAS execution
a5ba40a9a36 gh-41763: build/pkgs/plantri: update to 5.8
4aa1ec15a66 gh-41761: Remove rpy2 workaround in conftest.py
23b4513807e gh-41759: Move references to master index for character, llt, subword_complex
e243f56f5c1 gh-41758: Move the flint pxd generation script to tools
3c9c3f47e24 gh-41755: Remove "needs sage.foo" tags in sage.{sandpiles,probability}
062857a2e07 gh-41751: fix inference of shape from labels
f960637953e gh-41749: Bug fix for no caching Unique Hess model
7191d80d651 gh-41747: Move local references from sf/macdonald.py to global index.rst (#28445)
161aad23e39 gh-41746: Use `Py_hash_t` for hashes
06b6f34ddd3 gh-41743: Remove exclusion of `factorial` since from `math.factorial` on `float` raises `TypeError`
08e87fc6355 gh-41741: Fix `BuiltinFunction.__call__` calls `self._evalf_` even if `hold=True`
8be5256d619 gh-41739: add parameter immutable to graph generators in `random.py`
e397d05929e gh-41737: add parameter immutable to graph generators in `classical_geometries.py` (part 3)
57bd61550b9 gh-41736: add parameter immutable to graph generators in `classical_geometries.py` (part 2)
89930bc6de4 gh-41735: Feature adding longest_path() method for DAGs
16e87b6f521 gh-41734: add parameter immutable to graph generators in `classical_geometries.py` (part 1)
157c613fda5 gh-41733: add parameter immutable to graph generators in `degree_sequence.py`
7f6f73bc745 gh-41732: lots of various small pep8 fixes
0615b405d5d gh-41731: Move references from gelfand_tsetlin_patterns.py to master bibliography
5949d6143d2 gh-41728: Make sagelib compatible with mpmath 1.4
82b18040732 gh-41727: pep8 cleanup of quasisymmetric functions
8c9d1b83f9c gh-41724: add parameter immutable to distance regular graph generators (part 3)
a2e8656535a gh-41721: matroids: make flats not require an argument
da798da7268 gh-41719: add parameter immutable to graph generators in `platonic_solids.py`
8f4ecb5a344 gh-41718: Move references from 5 combinat files to master bibliography
8df4ebc330f gh-41717: various cython-lint details
3013c671381 gh-41716: some cython-lint details in algebras/ and crystals/
5103049be79 gh-41709: Install conftest.py with meson
f9476b9413b gh-41708: add parameter immutable to graph generators in `trees.pyx` (part 1)
64477c643dd gh-41707: doc: alert pexpect GAP interface to libgap library interface
38b54371367 gh-41706: add parameter immutable to graph generators in `smallgraphs.py` (part 13)
93bdb4468e1 gh-41705: Add missing subdirectories for mpc, mpfi, and polybori in meson.build
3f9db7b2964 gh-41703: final cleanup after 38126
ac4da6031b7 gh-41701: some pep8 details in two files in matrix/
c23795dd727 gh-41700: Upgrade GAP, libsemigroups
f3a9994a236 gh-41699: Move references from combinat/shard_order.py to master bibliography
d7fe2e01cb5 gh-41695: Fix power of `Integer` with modulus `0`
86e7f4c08cd gh-41694: submodule membership testing ( in operator)
441532e19ed gh-41691: Speed up fundamental group computations
24bd8c69a66 gh-41689: src/sage/rings: remove block-level "needs sage.foo" tags
ea4d5969135 gh-41688: src/sage/symbolic: remove block-level "needs sage.foo" tags
f7cecd9eb90 gh-41686: Move references from combinat/rsk.py to master bibliography
1becfaa01c4 gh-41683: Implement Oxley's visualization of R6, P6, P7, Q6
a24fb31231b gh-41682: src/sage/graphs: remove block-level "needs sage.foo" tags
69cd0361aaf gh-41681: src/sage/matrix: remove block-level "needs sage.foo" tags
76b0eadadf4 gh-41679: src/sage/ext/fast_callable.pyx: add INPUT/OUTPUT docs to fast_callabl…
105304b7a9b gh-41677: some code cleanup in quaternion algebras
5142f8e306a gh-41673: src/sage/geometry: remove block-level "needs sage.foo" tags
66caef69b0b gh-41668: Fix typo in q-Pochhammer definition for negative n.
1af75d19033 gh-41667: implement comparison of AdditiveAbelianGroupWrappers with the same universe
0849673a800 gh-41665: Add is_pointed() method for convex cones
1df0928bc19 gh-41635: add python 3.14 in conda
32d8feb0c53 gh-41621: Add `random_bistochastic_matrices()` special constructor
9c3b295d5d9 gh-41602: Improvements to the construction of subalgebras
73ce3ee38a0 gh-41598: New method `map_coefficients` for Laurent series
ac6b082551f gh-41547: semidistributive rowmotion
d5b421ce431 gh-41539: src/sage/structure/sequence.py: skip fewer cases when pbori is missing
2d5757f1f3c gh-41530: more algorithms for .torsion_basis() over {finite, number, ""} fields
6ed85aaded1 gh-41416: Implementation of blossoming trees for their bijection with Tamari intervals
3974b9a280d gh-41326: Witt vectors upgraded
f75c9fddf7f gh-41264: Use safe methods for get and set in free modules
53f6ce25e89 gh-41143: Support platform-specific wheels and add rpds-py as a dependency
9fa6bee5c49 gh-39085: Add pre-commit hook
e37154cba14 (tag: 10.9.beta7) Updated SageMath version to 10.9.beta7

David Coudert

unread,
Mar 25, 2026, 8:52:28 AM (13 days ago) Mar 25
to sage-r...@googlegroups.com
Thank you for this new beta.

I'm experiencing an issue with the compilation of givaro on macOS 26.3.1, using homebrew (recently upgraded). Il a fresh shell, I did
make distclean
./bootstrap -u http://sagepad.org/spkg/upstream/configure/
./bootstrap -d
source .homebrew-build-env
./configure --enable-system-site-packages --with-python=`which python3.13` --with-system-jupyter_core=no --with-system-platformdirs=no --enable-tdlib=yes --disable-notebook --with-darwin-accelerate=yes
make -j8 start SAGE_SERVER=http://sagepad.org

and I get several errors in the compilation of givaro. See attached logs.

Any help is more than welcome.

Best,
David.

givaro-4.2.1.log
install.log

david....@gmail.com

unread,
Mar 25, 2026, 12:42:43 PM (12 days ago) Mar 25
to sage-release
It seems to be a known issue with llvm 21 and there is a fix https://github.com/linbox-team/givaro/pull/240.
However, it is not yet in the last release of givaro.

I don't know how I can use that to fix my compilation issue.

Dima Pasechnik

unread,
Mar 25, 2026, 1:01:22 PM (12 days ago) Mar 25
to sage-r...@googlegroups.com


On March 25, 2026 10:42:43 AM CST, "david....@gmail.com" <david....@gmail.com> wrote:
>It seems to be a known issue with llvm 21 and there is a fix
>https://github.com/linbox-team/givaro/pull/240.
>However, it is not yet in the last release of givaro.
>
>I don't know how I can use that to fix my compilation issue.

create a patch, as usual?
Anyhow, you can use the Macaulay2 homebrew tap:

<https://github.com/Macaulay2/homebrew-tap/blob/main/Formula/givaro.rb>

it should work for you. They use givaro from github, the master branch.

Dima

PS. This week it is school vacation here, I am mostly away from the computer

David Coudert

unread,
Mar 25, 2026, 2:01:49 PM (12 days ago) Mar 25
to sage-r...@googlegroups.com
I already use Macaulay2 from homebrew


MAC-04017247:sage dcoudert$ brew search givaro

==> Formulae

macaulay2/tap/givaro


This is version 4.2.1 (in directory /opt/homebrew/Cellar/givaro/4.2.1_1/).
But configure says it’s not suitable.
In fact, 
- we have no homebrew.txt file in build/pkgs/givaro/distros/
- directory /opt/homebrew/Cellar/givaro/4.2.1_1/bin/ contains only givaro-config
- same for /opt/homebrew/bin/givaro-config

So I don’t know what to do.




-- 
You received this message because you are subscribed to the Google Groups "sage-release" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sage-release...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/sage-release/24910433-4960-42A6-8F25-2A2923D55509%40gmail.com.

Dima Pasechnik

unread,
Mar 25, 2026, 11:57:19 PM (12 days ago) Mar 25
to sage-r...@googlegroups.com


On March 25, 2026 12:01:34 PM CST, David Coudert <david....@gmail.com> wrote:
>I already use Macaulay2 from homebrew
>
>MAC-04017247:sage dcoudert$ brew search givaro
>==> Formulae
>macaulay2/tap/givaro ✔
>
>This is version 4.2.1 (in directory /opt/homebrew/Cellar/givaro/4.2.1_1/).
>But configure says it’s not suitable.
>In fact,
>- we have no homebrew.txt file in build/pkgs/givaro/distros/

this is only crucial for CI

>- directory /opt/homebrew/Cellar/givaro/4.2.1_1/bin/ contains only givaro-config
>- same for /opt/homebrew/bin/givaro-config
>
>So I don’t know what to do.

it's probably related to the not yet done #41626

David Coudert

unread,
Mar 26, 2026, 11:08:22 AM (11 days ago) Mar 26
to sage-r...@googlegroups.com
Something surprising is that configure outputs
-----------------------------------------------------------------------------
Checking whether SageMath should install SPKG givaro...
checking for givaro >= 4.2.0... yes
real_configure: will use system package and not install SPKG givaro
-----------------------------------------------------------------------------

And then in the summary:
givaro:                         no suitable system package; standard, SPKG version 4.2.1 will be installed

How is this possible ?




Dima Pasechnik

unread,
Mar 26, 2026, 12:17:14 PM (11 days ago) Mar 26
to sage-r...@googlegroups.com
that's because we have a convoluted logic in spkg-configures for linbox (and/or fflas-ffpack, I need to look it up)  which makes the rejection of the latter triggering the rejection of givaro.

You can undo it, it's not hard.

David Coudert

unread,
Mar 27, 2026, 6:22:06 AM (11 days ago) Mar 27
to sage-r...@googlegroups.com
I tried 

diff --git a/build/pkgs/linbox/spkg-configure.m4 b/build/pkgs/linbox/spkg-configure.m4

index 49cc871a85c..4a1c9fabaa7 100644

--- a/build/pkgs/linbox/spkg-configure.m4

+++ b/build/pkgs/linbox/spkg-configure.m4

@@ -11,6 +11,6 @@ SAGE_SPKG_CONFIGURE([linbox], [

 ], [dnl REQUIRED_CHECK

 ], [dnl PRE

 ], [dnl POST

-   sage_spkg_install_fflas_ffpack=$sage_spkg_install_linbox

-   sage_spkg_install_givaro=$sage_spkg_install_linbox

+   # sage_spkg_install_fflas_ffpack=$sage_spkg_install_linbox

+   # sage_spkg_install_givaro=$sage_spkg_install_linbox

 ])



Then compilation fails for libhomfly

[libhomfly-1.03] [spkg-install] Building libhomfly-1.03

[libhomfly-1.03] [spkg-install] Making all in lib

[libhomfly-1.03] [spkg-install] /opt/homebrew/bin/bash ../libtool  --tag=CC   --mode=compile gcc -std=gnu23 -DPACKAGE_NAME=\"libhomfly\" -DPACKAGE_TARNAME=\"libhomfly\" -DPACKAGE_VERSION=\"1.03\" -DPACKAGE_STRING=\"libhomfly\ 1.03\" -DPACKAGE_BUGREPORT=\"mma...@unizar.es\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libhomfly\" -DVERSION=\"1.03\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I.     -g -O2 -c -o bound.lo bound.c

[libhomfly-1.03] [spkg-install] libtool: compile:  gcc -std=gnu23 -DPACKAGE_NAME=\"libhomfly\" -DPACKAGE_TARNAME=\"libhomfly\" -DPACKAGE_VERSION=\"1.03\" "-DPACKAGE_STRING=\"libhomfly 1.03\"" -DPACKAGE_BUGREPORT=\"mma...@unizar.es\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libhomfly\" -DVERSION=\"1.03\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -I. -g -O2 -c bound.c  -fno-common -DPIC -o .libs/bound.o

[libhomfly-1.03] [spkg-install] bound.c:195:17: error: unknown type name 'list'

[libhomfly-1.03] [spkg-install]   195 | void b_one_pair(list, list2, one, two)

[libhomfly-1.03] [spkg-install]       |                 ^

[libhomfly-1.03] [spkg-install] bound.c:195:23: error: unknown type name 'list2'

[libhomfly-1.03] [spkg-install]   195 | void b_one_pair(list, list2, one, two)

[libhomfly-1.03] [spkg-install]       |                       ^

[libhomfly-1.03] [spkg-install] bound.c:195:30: error: unknown type name 'one'

[libhomfly-1.03] [spkg-install]   195 | void b_one_pair(list, list2, one, two)

[libhomfly-1.03] [spkg-install]       |                              ^

[libhomfly-1.03] [spkg-install] bound.c:195:35: error: unknown type name 'two'

[libhomfly-1.03] [spkg-install]   195 | void b_one_pair(list, list2, one, two)

[libhomfly-1.03] [spkg-install]       |                                   ^

[libhomfly-1.03] [spkg-install] bound.c:195:39: error: expected ';' after top level declarator

[libhomfly-1.03] [spkg-install]   195 | void b_one_pair(list, list2, one, two)

[libhomfly-1.03] [spkg-install]       |                                       ^

[libhomfly-1.03] [spkg-install]       |                                       ;

[libhomfly-1.03] [spkg-install] bound.c:196:8: error: redefinition of 'list' with a different type: 'word *' (aka 'int *') vs 'word[26]' (aka 'int[26]')

[libhomfly-1.03] [spkg-install]   196 | word  *list;    /* list of original inputs/outputs, modified by this routine */

[libhomfly-1.03] [spkg-install]       |        ^

[libhomfly-1.03] [spkg-install] bound.c:24:6: note: previous definition is here

[libhomfly-1.03] [spkg-install]    24 | word list[BIGWEAVE];              /* description of first new weave */

[libhomfly-1.03] [spkg-install]       |      ^

[libhomfly-1.03] [spkg-install] bound.c:197:8: error: redefinition of 'list2' with a different type: 'word *' (aka 'int *') vs 'word[26]' (aka 'int[26]')

[libhomfly-1.03] [spkg-install]   197 | word  *list2;                      /* inputs/outputs of the second new weave */

[libhomfly-1.03] [spkg-install]       |        ^

[libhomfly-1.03] [spkg-install] bound.c:25:6: note: previous definition is here

[libhomfly-1.03] [spkg-install]    25 | word list2[BIGWEAVE];           /* description of second, if needed */

[libhomfly-1.03] [spkg-install]       |      ^

[libhomfly-1.03] [spkg-install] bound.c:200:1: error: expected identifier or '('

[libhomfly-1.03] [spkg-install]   200 | {

[libhomfly-1.03] [spkg-install]       | ^

[libhomfly-1.03] [spkg-install] 8 errors generated.

[libhomfly-1.03] [spkg-install] make[6]: *** [bound.lo] Error 1

[libhomfly-1.03] [spkg-install] make[5]: *** [all-recursive] Error 1




Dima Pasechnik

unread,
Mar 27, 2026, 9:45:48 AM (11 days ago) Mar 27
to sage-r...@googlegroups.com
you need a newly released libhomfly, version 1.04

<https://github.com/miguelmarco/libhomfly/releases/tag/1.04>

David Coudert

unread,
Mar 27, 2026, 10:38:18 AM (10 days ago) Mar 27
to sage-r...@googlegroups.com
With libhomfly 1.04, compilation fails for linbox

[linbox-1.7.1] [spkg-install] /opt/homebrew/Cellar/givaro/4.2.1_1/include/recint/rrint.h:125:32: error: 'make_signed' cannot be specialized: Users are not allowed to specialize this standard library entity [-Winvalid-specialization]



So it seems we need a new version of givaro (not yet released) + libhomfly 1.04 + ???


Dima Pasechnik

unread,
Mar 27, 2026, 11:03:49 AM (10 days ago) Mar 27
to sage-r...@googlegroups.com
What version of XCode are you using?
(Apple is known for releasing a bit broken clang  versions, which then got fixed)

David Coudert

unread,
Mar 27, 2026, 11:17:53 AM (10 days ago) Mar 27
to sage-r...@googlegroups.com
macOS 26.4 and Xcode 26.4

As said earlier, there is a fix for givaro https://github.com/linbox-team/givaro/pull/240 that has been recently merged and so will be in next release. This should certainly help fixing my issues.

Dima Pasechnik

unread,
Mar 27, 2026, 1:32:20 PM (10 days ago) Mar 27
to sage-r...@googlegroups.com
One can add this fix to the givaro Homebrew formula, this should be easy. I am away from Apple machines now, so this has to wait  a couple of days if I am to do it
Reply all
Reply to author
Forward
0 new messages