Sage 10.6.beta7 released

314 views
Skip to first unread message

Volker Braun

unread,
Feb 21, 2025, 6:40:17 PMFeb 21
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


9cd86e9596a (tag: 10.6.beta7, github/develop) Updated SageMath version to 10.6.beta7
c2766d1f625 gh-39541: Remove dead mailing lists.
54951498178 gh-39536: Fix a nonfunctional long time doctest tag
5289298248a gh-39533: build/pkgs: update eclib to version 20250122
7420a272382 gh-39530: Improvement to flint_autogen reader
cee1e2b52f9 gh-39527: Test on CI that update-meson is properly ran
a007379b910 gh-39523: multi polynomial element/repr
850493472d5 gh-39521: rename also set-like species
bd626efc02f gh-39518: line_graph for multigraphs
72c6188116a gh-39513: Show test failures of ci-meson as annotations
4f4c1203415 gh-39510: add of the function rank_support_of_vector
2af3de6fa6e gh-39509: Add a doctest for HomsetsCategory._make_named_class_key
d8b7cdfcecb gh-39508: Fix some typo
b567299fbbb gh-39506: New algorithm for cuts of a Poset
88672d71a29 gh-39505: Improve handling of strings supplied as matrix entries
935232df552 gh-39504: Implement im_gens in the class fraction_field_FpT
a01815fda00 gh-39499: Improve sage_getfile by looking at __init__
b7da8f23c43 gh-39498: Apply sort and filter of walk_packages consistently
3500f616037 gh-39497: moving random_element to category of rings
e368fa71812 gh-39496: Add deformation cones and checking for regularity for Point Configurations and normal fans of Polyhedra
8978ff83f52 gh-39495: Add documentation of Gabidulin codes in the reference manual
98eec5d86fe gh-39494: Fix more doctests in meson_editable install
cfbaaf16be2 gh-39491: fixing doctests failures in misc/latex*.py
a2737325c19 gh-39489: fix several oeis related doctests
8a44c7365b7 gh-39488: Fix issue on matrix construction over integer mod ring for large coefficients
78a3eede92c gh-39487: Improvement of the rendering of the documentation in polynomial sequence
34b7f9050fb gh-39486: Finish changing Rational's round method default rounding to even
04afcf71552 gh-39485:  Implement conversion from laurent series to rational function field
ae158663847 gh-39482: fix one typo
83f7d065286 gh-39481: Fixed issue in list_plot where it assumed data had been enumerated when it might not have been
8e204dde3b3 gh-39479: Fixed crash when exp(0) of p-adic numbers is called
11ee7ca4e19 gh-39477: typing and details in tableaux files
c61e562de76 gh-39476: typing annotation for gens method in rings and groups (pyx files)
85ce297ff2c gh-39474: convert gens method in modular to return tuple
c732c6552e4 gh-39473: add tuple typing to gens methods in algebras
556d5f0eb80 gh-39466: remove some deprecations in groups
c22e48480c3 gh-39456: Trivial simplifications for arccos
68744be391e gh-39454: remove deprecated stuff in permutation.py
784ff00867a gh-39449: Magma padics
897e722c74e gh-39423: Use import_module instead of find_spec
870aba20786 gh-39397: details in braid groups
e6975bebe80 gh-39381: Allow system python 3.13
b57e33797cf gh-39366: Add documentation to LaurentSeries point to accessors
357f95e088c gh-39365: Allow coercion from Frac(QQ[x]) to LaurentSeriesRing(QQ)
041336691f6 gh-39266: add parameter immutable to generators in `sage/graphs/digraph_generators.py` (part 2)
e0806107d60 gh-39251: Require Python 3.11 or newer; remove outdated workarounds
ac8406fba6a gh-39248: introduce new apozeta polynomial for posets
10edc54de0a gh-39215: Class polynomial for Drinfeld modules
2e0d6d201bf gh-39214: Add keyword prec for exponential and logarithm of Drinfeld modules
b5c26156430 gh-39212: Refactor period lattice
d0e72a61433 gh-39128: Add note about makeflags and ninja parallelism
067ebbd0c8c gh-39093: Improve hack used in debug_options
a89c57b64f8 gh-39092: Remove erroneous member declaration in farey_symbol
cc231ef0353 gh-39061: Fix some errors in documentation of cachefunc
f0581cbe397 gh-39025: Add reseed_rng option to p_iter_fork
290b261bc4f gh-38986: Allow CRT_list() to be called with one argument
0a278fc918e gh-38824: Turn some doctests in `ell_rational_field.py` into long tests
c43cd23ee83 gh-38650: Add support for pseudomorphisms
6e82ee51eb9 gh-38108: Implicit function solver for lazy series
42d00ed27b3 gh-37173: Implemented `.ramified_places` and modified further methods to extend quaternion algebra functionality to number fields
8d7107c1aab gh-37158: use Parent in quotient rings too
766c7a0c5b8 (tag: 10.6.beta6) Updated SageMath version to 10.6.beta6

David Coudert

unread,
Feb 22, 2025, 10:55:44 AMFeb 22
to sage-r...@googlegroups.com
Thank you for this new beta.

Unfortunately, I’m unable to compile it on macOS 14.7.4 (with recent brew upgrade).

In a fresh shell, using a fresh clone, I did:
./bootstrap
source .homebrew-build-env
./configure
make build

The compilation is failing due to a wrong version of Python. It uses 3.9 but requires '<3.14,>=3.11’.
I don’t understand why.

In install.log, many packages are compiled using system Python 3.13.2, but at some point, I see

mkdir -p "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/var/lib/sage/installed"

And also

[pip-24.2] Setting up build directory /Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/var/tmp/sage/build/pip-24.2


Help is more than welcome.
Thanks,
David.

## In my environment:

xxxx:sage dcoudert$ which python3

/opt/homebrew/bin/python3

xxxx:sage dcoudert$ python3 --version

Python 3.13.2


xxxx:sage dcoudert$ env

CVXOPT_SUITESPARSE_INC_DIR=/opt/homebrew/include/suitesparse

TERM_PROGRAM=Apple_Terminal

TERM=xterm-256color

SHELL=/bin/bash

HOMEBREW_REPOSITORY=/opt/homebrew

TMPDIR=/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/

LIBRARY_PATH=/opt/homebrew/opt/primesieve/lib:/opt/homebrew/opt/bdw-gc/lib:/opt/homebrew/opt/libpng/lib:/opt/homebrew/opt/polymake/lib:/opt/homebrew/opt/ntl/lib:/opt/homebrew/opt/readline/lib:/opt/homebrew/lib

CPLEX_HOME=/Users/dcoudert/Applications/CPLEX_Studio2211

TERM_PROGRAM_VERSION=453

TERM_SESSION_ID=92898994-6AC4-4FA8-93BF-B57B39DD8AFA

DOT_SAGE=/Users/dcoudert/.sage

USER=dcoudert

CPATH=/opt/homebrew/opt/primesieve/include:/opt/homebrew/opt/bdw-gc/include:/opt/homebrew/opt/libpng/include:/opt/homebrew/opt/polymake/include:/opt/homebrew/opt/ntl/include:/opt/homebrew/opt/readline/include:/opt/homebrew/include

SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.w3NBoWA5DE/Listeners

CVXOPT_SUITESPARSE_LIB_DIR=/opt/homebrew/lib

PATH=/opt/homebrew/opt/polymake/bin:/opt/homebrew/opt/texinfo/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Library/Apple/usr/bin:/Library/TeX/texbin

MOSEKLM_LICENSE_FILE=/Users/dcoudert/Applications/mosek/mosek.lic

LaunchInstanceID=C5B54F28-5164-4FA8-8154-8D94AF74F0E4

__CFBundleIdentifier=com.apple.Terminal

PWD=/Users/dcoudert/sage

LANG=fr_FR.UTF-8

SAGE_ROOT=/Users/dcoudert/sage

XPC_FLAGS=0x0

XPC_SERVICE_NAME=0

HOME=/Users/dcoudert

SHLVL=1

HOMEBREW_PREFIX=/opt/homebrew

LOGNAME=dcoudert

PKG_CONFIG_PATH=/opt/homebrew/opt/sqlite/lib/pkgconfig:/opt/homebrew/opt/readline/lib/pkgconfig:/opt/homebrew/opt/openssl/lib/pkgconfig:/opt/homebrew/opt/openblas/lib/pkgconfig:/opt/homebrew/lib/pkgconfig:

INFOPATH=/opt/homebrew/share/info:

HOMEBREW_CELLAR=/opt/homebrew/Cellar

SECURITYSESSIONID=186b3

_=/usr/bin/env



## The end of the compilation

….

[sage_setup-10.6.beta7] [spkg-install] Successfully built sage-setup

[sage_setup-10.6.beta7] [spkg-install] Installing collected packages: sage-setup

[sage_setup-10.6.beta7] [spkg-install] Successfully installed sage-setup-10.6b7

[sage_setup-10.6.beta7] Moving package files from temporary location /Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/var/tmp/sage/build/sage_setup-10.6.beta7/inst to /Users/dcoudert/sage/local/var/lib/sage/venv-python3.9

[sage_setup-10.6.beta7] Deleting build directory /Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/var/tmp/sage/build/sage_setup-10.6.beta7

[sage_setup-10.6.beta7] Finished installing sage_setup-10.6.beta7

make --no-print-directory sagelib-SAGE_VENV-no-deps

[sagelib-10.6.beta7] Setting up build directory /Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/var/tmp/sage/build/sagelib-10.6.beta7

[sagelib-10.6.beta7] Host system: Darwin MAC-04017247 23.6.0 Darwin Kernel Version 23.6.0: Thu Dec 19 20:44:10 PST 2024; root:xnu-10063.141.1.703.2~1/RELEASE_ARM64_T6000 arm64

[sagelib-10.6.beta7] C compiler: gcc, Apple clang version 16.0.0 (clang-1600.0.26.6), Target: arm64-apple-darwin23.6.0, Thread model: posix, InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

[sagelib-10.6.beta7] No stamp file for package 'sagelib' in /Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/var/lib/sage/installed

[sagelib-10.6.beta7] No spkg-legacy-uninstall script; nothing to do

[sagelib-10.6.beta7] [spkg-install] Installing sagelib-10.6.beta7 (editable mode)

[sagelib-10.6.beta7] [spkg-install] Using pip 24.2 from /Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/lib/python3.9/site-packages/pip (python 3.9)

[sagelib-10.6.beta7] [spkg-install] Obtaining file:///Users/dcoudert/sage/src

[sagelib-10.6.beta7] [spkg-install]   Checking if build backend supports build_editable: started

[sagelib-10.6.beta7] [spkg-install]   Running command Checking if build backend supports build_editable

[sagelib-10.6.beta7] [spkg-install]   Checking if build backend supports build_editable: finished with status 'done'

[sagelib-10.6.beta7] [spkg-install]   Preparing metadata (pyproject.toml): started

[sagelib-10.6.beta7] [spkg-install]   Running command Preparing metadata (pyproject.toml)

[sagelib-10.6.beta7] [spkg-install]   running dist_info

[sagelib-10.6.beta7] [spkg-install]   creating /private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/pip-modern-metadata-p69w9b75/sagemath_standard.egg-info

[sagelib-10.6.beta7] [spkg-install]   writing /private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/pip-modern-metadata-p69w9b75/sagemath_standard.egg-info/PKG-INFO

[sagelib-10.6.beta7] [spkg-install]   writing dependency_links to /private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/pip-modern-metadata-p69w9b75/sagemath_standard.egg-info/dependency_links.txt

[sagelib-10.6.beta7] [spkg-install]   writing requirements to /private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/pip-modern-metadata-p69w9b75/sagemath_standard.egg-info/requires.txt

[sagelib-10.6.beta7] [spkg-install]   writing top-level names to /private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/pip-modern-metadata-p69w9b75/sagemath_standard.egg-info/top_level.txt

[sagelib-10.6.beta7] [spkg-install]   writing manifest file '/private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/pip-modern-metadata-p69w9b75/sagemath_standard.egg-info/SOURCES.txt'

[sagelib-10.6.beta7] [spkg-install]   reading manifest template 'MANIFEST.in'

[sagelib-10.6.beta7] [spkg-install]   warning: no previously-included files matching '__pycache__' found anywhere in distribution

[sagelib-10.6.beta7] [spkg-install]   warning: no previously-included files matching '*.py[co]' found anywhere in distribution

[sagelib-10.6.beta7] [spkg-install]   warning: no previously-included files matching '*.bak' found anywhere in distribution

[sagelib-10.6.beta7] [spkg-install]   warning: no previously-included files matching '*.so' found anywhere in distribution

[sagelib-10.6.beta7] [spkg-install]   warning: no previously-included files matching '*~' found anywhere in distribution

[sagelib-10.6.beta7] [spkg-install]   no previously-included directories found matching '.tox'

[sagelib-10.6.beta7] [spkg-install]   no previously-included directories found matching 'build'

[sagelib-10.6.beta7] [spkg-install]   no previously-included directories found matching 'dist'

[sagelib-10.6.beta7] [spkg-install]   adding license file 'LICENSE.txt'

[sagelib-10.6.beta7] [spkg-install]   writing manifest file '/private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/pip-modern-metadata-p69w9b75/sagemath_standard.egg-info/SOURCES.txt'

[sagelib-10.6.beta7] [spkg-install]   creating '/private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/pip-modern-metadata-p69w9b75/sagemath_standard-10.6b7.dist-info'

[sagelib-10.6.beta7] [spkg-install]   Preparing metadata (pyproject.toml): finished with status 'done'

[sagelib-10.6.beta7] [spkg-install] INFO: pip is looking at multiple versions of sagemath-standard to determine which version is compatible with other requirements. This could take a while.

[sagelib-10.6.beta7] [spkg-install] ERROR: Package 'sagemath-standard' requires a different Python: 3.9.6 not in '<3.14,>=3.11'

[sagelib-10.6.beta7] [spkg-install] ********************************************************************************

[sagelib-10.6.beta7] [spkg-install] Error installing sagelib-10.6.beta7

[sagelib-10.6.beta7] [spkg-install] ********************************************************************************

[sagelib-10.6.beta7] ************************************************************************

[sagelib-10.6.beta7] Error installing package sagelib-10.6.beta7

[sagelib-10.6.beta7] ************************************************************************

[sagelib-10.6.beta7] Please email sage-devel (http://groups.google.com/group/sage-devel)

[sagelib-10.6.beta7] explaining the problem and including the log files

[sagelib-10.6.beta7]   /Users/dcoudert/sage/logs/pkgs/sagelib-10.6.beta7.log

[sagelib-10.6.beta7] and

[sagelib-10.6.beta7]   /Users/dcoudert/sage/config.log

[sagelib-10.6.beta7] Describe your computer, operating system, etc.

[sagelib-10.6.beta7] If you want to try to fix the problem yourself, *don't* just cd to

[sagelib-10.6.beta7] /Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/var/tmp/sage/build/sagelib-10.6.beta7 and type 'make' or whatever is appropriate.

[sagelib-10.6.beta7] Instead, the following commands setup all environment variables

[sagelib-10.6.beta7] correctly and load a subshell for you to debug the error:

[sagelib-10.6.beta7]   (cd '/Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/var/tmp/sage/build/sagelib-10.6.beta7' && '/Users/dcoudert/sage/sage' --buildsh)

[sagelib-10.6.beta7] When you are done debugging, you can type "exit" to leave the subshell.

[sagelib-10.6.beta7] ************************************************************************

make[4]: *** [sagelib-SAGE_VENV-no-deps] Error 1

make[3]: *** [/Users/dcoudert/sage/local/var/lib/sage/venv-python3.9/var/lib/sage/installed/sagelib-10.6.beta7] Error 2

make[2]: *** [all-build] Error 2

***************************************************************

Error building Sage.






--
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/6d596461-07e7-4cc4-91ee-1cddec4537d9n%40googlegroups.com.

dim...@gmail.com

unread,
Feb 22, 2025, 1:21:47 PMFeb 22
to sage-r...@googlegroups.com, David Coudert
On Sat, Feb 22, 2025 at 04:55:24PM +0100, David Coudert wrote:
> Unfortunately, I’m unable to compile it on macOS 14.7.4 (with recent brew upgrade).
>
> In a fresh shell, using a fresh clone, I did:
> ./bootstrap
> source .homebrew-build-env
> ./configure
> make build
>
> The compilation is failing due to a wrong version of Python. It uses 3.9 but requires '<3.14,>=3.11’.
> I don’t understand why.

Are you sure it was a clean repo (cleaned with "git clean -fdx" or
freshly cloned) ?
This is really unusual:

> [sagelib-10.6.beta7] [spkg-install] Preparing metadata (pyproject.toml): finished with status 'done'
> [sagelib-10.6.beta7] [spkg-install] INFO: pip is looking at multiple versions of sagemath-standard to determine which version is compatible with other requirements. This could take a while.
> [sagelib-10.6.beta7] [spkg-install] ERROR: Package 'sagemath-standard' requires a different Python: 3.9.6 not in '<3.14,>=3.11'

Please post config.log

Best
Dima
> > To unsubscribe from this group and stop receiving emails from it, send an email to sage-release...@googlegroups.com <mailto:sage-release...@googlegroups.com>.
> > To view this discussion visit https://groups.google.com/d/msgid/sage-release/6d596461-07e7-4cc4-91ee-1cddec4537d9n%40googlegroups.com <https://groups.google.com/d/msgid/sage-release/6d596461-07e7-4cc4-91ee-1cddec4537d9n%40googlegroups.com?utm_medium=email&utm_source=footer>.
>
> --
> 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/3CFD6076-686E-4AB6-9E9E-A3140B0AE23D%40gmail.com.
signature.asc

David Coudert

unread,
Feb 22, 2025, 1:59:45 PMFeb 22
to Dima Pasechnik, sage-r...@googlegroups.com
The config.log file is attached.

Yes, I’m sure I use a fresh clone.

Best,
David.

config.log

Marc Culler

unread,
Feb 22, 2025, 4:03:55 PMFeb 22
to sage-release
Did you install Python 3.9, or is Sage finding the Python 3.9 that Apple ships with their computers?

- Marc

Kwankyu Lee

unread,
Feb 22, 2025, 6:04:25 PMFeb 22
to sage-release

Dave Morris

unread,
Feb 22, 2025, 8:46:11 PMFeb 22
to sage-release
I don't think Python 3.9 is allowed any more:

e0806107d60 gh-39251: Require Python 3.11 or newer; remove outdated workarounds


Dave Morris

unread,
Feb 22, 2025, 8:46:15 PMFeb 22
to sage-release
Sorry if this is noise, but several CI runs seem to have this doctest error (which I don't think I've seen before):

sage -t --long --warn-long 30.0 --random-seed=286735480429121101562228604801325644303 src/sage/schemes/elliptic_curves/ell_rational_field.py
**********************************************************************
Error: Failed example:: Got: [(38902300445163190028032/305111826865145547009 : 680061120400889506109527474197680/5329525731816164537079693913473 : 1)]
E.gens(use_database=False, algorithm='pari', pari_effort=4) # long time
Expected:
[(611429153205013185025/9492121848205441 : 15118836457596902442737698070880/924793900700594415341761 : 1)]
Got:
[(38902300445163190028032/305111826865145547009 : 680061120400889506109527474197680/5329525731816164537079693913473 : 1)]
**********************************************************************


On Saturday, February 22, 2025 at 6:04:25 PM UTC-5 Kwankyu Lee wrote:

Dave Morris

unread,
Feb 22, 2025, 11:19:54 PMFeb 22
to sage-release
I don't understand build systems, but something seems to be messed up. When I try to build:

./configure reports "checking for python3 >= 3.9.0, < 3.14.0 with modules ..." (so it accepts my python 3.9.9),
but make build reports an error with "Package 'sagemath-standard' requires a different Python: 3.9.9 not in '<3.14,>=3.11'"

dim...@gmail.com

unread,
Feb 22, 2025, 11:40:42 PMFeb 22
to sage-r...@googlegroups.com
On Sat, Feb 22, 2025 at 06:07:24PM -0800, Dave Morris wrote:
> I don't understand build systems, but something seems to be messed up. When
> I try to build:
>
> ./configure reports "checking for python3 >= 3.9.0, < 3.14.0 with modules
> ..." (so it accepts my python 3.9.9),
> but make build reports an error with "Package 'sagemath-standard' requires
> a different Python: 3.9.9 not in '<3.14,>=3.11'"
>
> On Saturday, February 22, 2025 at 8:46:11 PM UTC-5 Dave Morris wrote:
>
> > I don't think Python 3.9 is allowed any more:
> >
> > e0806107d60 gh-39251: Require Python 3.11 or newer; remove outdated
> > workarounds

The following didn't make it into the beta from #39257, sorry, my fault.
Too many crazy news lately...
I don't have older than 3.11 Pythons on the box I tested, so :-(

https://github.com/sagemath/sage/pull/39251#issuecomment-2676563774

--- a/build/pkgs/python3/spkg-configure.m4
+++ b/build/pkgs/python3/spkg-configure.m4
@@ -1,6 +1,6 @@
SAGE_SPKG_CONFIGURE([python3], [
- m4_pushdef([MIN_VERSION], [3.9.0])
- m4_pushdef([MIN_NONDEPRECATED_VERSION], [3.9.0])
+ m4_pushdef([MIN_VERSION], [3.11.0])
+ m4_pushdef([MIN_NONDEPRECATED_VERSION], [3.11.0])
m4_pushdef([LT_STABLE_VERSION], [3.14.0])
m4_pushdef([LT_VERSION], [3.14.0])
AC_ARG_WITH([python],

You might apply this, re-run ./boostrap and ./configure + make
(perhaps "make sagelib-clean sagelib-uninstall" will be needed too)



> >
> >
> > On Saturday, February 22, 2025 at 6:04:25 PM UTC-5 Kwankyu Lee wrote:
> >
> >> Not only on macOS,
> >>
> >> https://github.com/sagemath/sage/actions/runs/13465411463/job/37630049652
> >>
> >>
>
> --
> 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/a35673c1-794a-48f2-b946-d61cb6ce876en%40googlegroups.com.

signature.asc

Dima Pasechnik

unread,
Feb 22, 2025, 11:49:46 PMFeb 22
to sage-release
The omitted version bump is now done on https://github.com/sagemath/sage/pull/39570
Needs review.

david....@gmail.com

unread,
Feb 23, 2025, 4:27:44 AMFeb 23
to sage-release
I have not installed Python 3.9, but I have Python 3.9.6 in /usr/bin/python3. It should the one from Apple.

I tried again from a fresh clone in a fresh shell, and after installing python-build with homebrew.
This time I see

venv -> local/var/lib/sage/venv-python3.13

Before it was pointing to venv-python3.9

Now the compilation fails when trying to install cffi (see below).

I will try again from scratch with https://github.com/sagemath/sage/pull/39570.


[pycparser-2.22] [spkg-pipinst] Successfully installed pycparser-2.22

[pycparser-2.22] Deleting build directory /Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/pycparser-2.22

[pycparser-2.22] Finished installing pycparser-2.22

make --no-print-directory cffi-SAGE_VENV-no-deps

[cffi-1.15.1] Attempting to download package cffi-1.15.1.tar.gz from mirrors

[cffi-1.15.1] https://github.com/sagemath/sage/releases/download/10.6/cffi-1.15.1.tar.gz

[cffi-1.15.1] [xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx]

[cffi-1.15.1] ERROR [transfer|run:135]: [Errno socket error] [Errno 404] Not Found: '//github.com/sagemath/sage/releases/download/10.6/cffi-1.15.1.tar.gz'

[cffi-1.15.1] Exception ignored in: <http.client.HTTPResponse object at 0x102d55990>

[cffi-1.15.1] Traceback (most recent call last):

[cffi-1.15.1]   File "/opt/homebrew/Cellar/pyt...@3.13/3.13.2/Frameworks/Python.framework/Versions/3.13/lib/python3.13/http/client.py", line 432, in close

[cffi-1.15.1]     super().close() # set "closed" flag

[cffi-1.15.1]   File "/opt/homebrew/Cellar/pyt...@3.13/3.13.2/Frameworks/Python.framework/Versions/3.13/lib/python3.13/http/client.py", line 445, in flush

[cffi-1.15.1]     self.fp.flush()

[cffi-1.15.1] ValueError: I/O operation on closed file.

[cffi-1.15.1] https://github.com/sagemath/sage/releases/download/10.5/cffi-1.15.1.tar.gz

[cffi-1.15.1] [Exception ignored in: <http.client.HTTPResponse object at 0x102c036a0>

[cffi-1.15.1] Traceback (most recent call last):

[cffi-1.15.1]   File "/opt/homebrew/Cellar/pyt...@3.13/3.13.2/Frameworks/Python.framework/Versions/3.13/lib/python3.13/http/client.py", line 432, in close

[cffi-1.15.1]     super().close() # set "closed" flag

[cffi-1.15.1]   File "/opt/homebrew/Cellar/pyt...@3.13/3.13.2/Frameworks/Python.framework/Versions/3.13/lib/python3.13/http/client.py", line 445, in flush

[cffi-1.15.1]     self.fp.flush()

[cffi-1.15.1] ValueError: I/O operation on closed file.

[cffi-1.15.1] ......................................................................]

[cffi-1.15.1] Setting up build directory /Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/cffi-1.15.1

[cffi-1.15.1] No patch files found in ../patches

[cffi-1.15.1] Host system: Darwin MAC-04017247 23.6.0 Darwin Kernel Version 23.6.0: Thu Dec 19 20:44:10 PST 2024; root:xnu-10063.141.1.703.2~1/RELEASE_ARM64_T6000 arm64

[cffi-1.15.1] C compiler: gcc, Apple clang version 16.0.0 (clang-1600.0.26.6), Target: arm64-apple-darwin23.6.0, Thread model: posix, InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

[cffi-1.15.1] No stamp file for package 'cffi' in /Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/lib/sage/installed

[cffi-1.15.1] No spkg-legacy-uninstall script; nothing to do

[cffi-1.15.1] [spkg-install] Installing cffi-1.15.1

[cffi-1.15.1] [spkg-install] * Creating isolated environment: venv+pip...

[cffi-1.15.1] [spkg-install] * Installing packages in isolated environment:

[cffi-1.15.1] [spkg-install]   - setuptools >= 40.8.0

[cffi-1.15.1] [spkg-install] * Getting build dependencies for wheel...

[cffi-1.15.1] [spkg-install] running egg_info

[cffi-1.15.1] [spkg-install] writing cffi.egg-info/PKG-INFO

[cffi-1.15.1] [spkg-install] writing dependency_links to cffi.egg-info/dependency_links.txt

[cffi-1.15.1] [spkg-install] writing entry points to cffi.egg-info/entry_points.txt

[cffi-1.15.1] [spkg-install] writing requirements to cffi.egg-info/requires.txt

[cffi-1.15.1] [spkg-install] writing top-level names to cffi.egg-info/top_level.txt

[cffi-1.15.1] [spkg-install] reading manifest file 'cffi.egg-info/SOURCES.txt'

[cffi-1.15.1] [spkg-install] reading manifest template 'MANIFEST.in'

[cffi-1.15.1] [spkg-install] adding license file 'LICENSE'

[cffi-1.15.1] [spkg-install] writing manifest file 'cffi.egg-info/SOURCES.txt'

[cffi-1.15.1] [spkg-install] * Building wheel...

[cffi-1.15.1] [spkg-install] running bdist_wheel

[cffi-1.15.1] [spkg-install] running build

[cffi-1.15.1] [spkg-install] running build_py

[cffi-1.15.1] [spkg-install] creating build

[cffi-1.15.1] [spkg-install] creating build/lib.macosx-14.0-arm64-cpython-313

[cffi-1.15.1] [spkg-install] creating build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/backend_ctypes.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/error.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/setuptools_ext.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/__init__.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/cffi_opcode.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/vengine_gen.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/pkgconfig.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/model.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/ffiplatform.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/api.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/vengine_cpy.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/commontypes.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/lock.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/recompiler.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/cparser.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/verifier.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/_cffi_include.h -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/parse_c_type.h -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/_embedding.h -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/_cffi_errors.h -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] running build_ext

[cffi-1.15.1] [spkg-install] building '_cffi_backend' extension

[cffi-1.15.1] [spkg-install] creating build/temp.macosx-14.0-arm64-cpython-313

[cffi-1.15.1] [spkg-install] creating build/temp.macosx-14.0-arm64-cpython-313/c

[cffi-1.15.1] [spkg-install] gcc -fno-strict-overflow -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -O3 -Wall -g -O2 -DFFI_BUILDING=1 -DUSE__THREAD -DHAVE_SYNC_SYNCHRONIZE -I/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/ffi -I/private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/build-env-d96qddt8/include -I/opt/homebrew/opt/pyt...@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13 -c c/_cffi_backend.c -o build/temp.macosx-14.0-arm64-cpython-313/c/_cffi_backend.o -iwithsysroot/usr/include/ffi

[cffi-1.15.1] [spkg-install] c/_cffi_backend.c:4523:22: warning: 'Py_FileSystemDefaultEncoding' is deprecated [-Wdeprecated-declarations]

[cffi-1.15.1] [spkg-install]  4523 |                      Py_FileSystemDefaultEncoding, &filename_or_null, &flags))

[cffi-1.15.1] [spkg-install]       |                      ^

[cffi-1.15.1] [spkg-install] /opt/homebrew/opt/pyt...@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13/fileobject.h:22:1: note: 'Py_FileSystemDefaultEncoding' has been explicitly marked deprecated here

[cffi-1.15.1] [spkg-install]    22 | Py_DEPRECATED(3.12) PyAPI_DATA(const char *) Py_FileSystemDefaultEncoding;

[cffi-1.15.1] [spkg-install]       | ^

[cffi-1.15.1] [spkg-install] /opt/homebrew/opt/pyt...@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13/pyport.h:251:54: note: expanded from macro 'Py_DEPRECATED'

[cffi-1.15.1] [spkg-install]   251 | #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))

[cffi-1.15.1] [spkg-install]       |                                                      ^

[cffi-1.15.1] [spkg-install] c/_cffi_backend.c:6112:9: error: call to undeclared function '_PyErr_WriteUnraisableMsg'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]

[cffi-1.15.1] [spkg-install]  6112 |         _PyErr_WriteUnraisableMsg(PyText_AS_UTF8(s), NULL);

[cffi-1.15.1] [spkg-install]       |         ^

[cffi-1.15.1] [spkg-install] c/_cffi_backend.c:6112:9: note: did you mean 'PyErr_WriteUnraisable'?

[cffi-1.15.1] [spkg-install] /opt/homebrew/opt/pyt...@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13/pyerrors.h:233:18: note: 'PyErr_WriteUnraisable' declared here

[cffi-1.15.1] [spkg-install]   233 | PyAPI_FUNC(void) PyErr_WriteUnraisable(PyObject *);

[cffi-1.15.1] [spkg-install]       |                  ^

[cffi-1.15.1] [spkg-install] 1 warning and 1 error generated.

[cffi-1.15.1] [spkg-install] error: command '/usr/bin/gcc' failed with exit code 1

[cffi-1.15.1] [spkg-install] 

[cffi-1.15.1] [spkg-install] ERROR Backend subprocess exited when trying to invoke build_wheel

[cffi-1.15.1] [spkg-install] Warning: building with "python3 -m build --wheel --outdir=dist   ." failed.

[cffi-1.15.1] [spkg-install] Retrying with "python3 -m build --wheel --outdir=dist --no-isolation --skip-dependency-check  .".

[cffi-1.15.1] [spkg-install] * Building wheel...

[cffi-1.15.1] [spkg-install] running bdist_wheel

[cffi-1.15.1] [spkg-install] running build

[cffi-1.15.1] [spkg-install] running build_py

[cffi-1.15.1] [spkg-install] copying cffi/backend_ctypes.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/error.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/setuptools_ext.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/__init__.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/cffi_opcode.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/vengine_gen.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/pkgconfig.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/model.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/ffiplatform.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/api.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/vengine_cpy.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/commontypes.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/lock.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/recompiler.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/cparser.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/verifier.py -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/_cffi_include.h -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/parse_c_type.h -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/_embedding.h -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] copying cffi/_cffi_errors.h -> build/lib.macosx-14.0-arm64-cpython-313/cffi

[cffi-1.15.1] [spkg-install] running build_ext

[cffi-1.15.1] [spkg-install] building '_cffi_backend' extension

[cffi-1.15.1] [spkg-install] gcc -fno-strict-overflow -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -O3 -Wall -g -O2 -DFFI_BUILDING=1 -DUSE__THREAD -DHAVE_SYNC_SYNCHRONIZE -I/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/ffi -I/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/include -I/opt/homebrew/opt/pyt...@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13 -c c/_cffi_backend.c -o build/temp.macosx-14.0-arm64-cpython-313/c/_cffi_backend.o -iwithsysroot/usr/include/ffi

[cffi-1.15.1] [spkg-install] c/_cffi_backend.c:4523:22: warning: 'Py_FileSystemDefaultEncoding' is deprecated [-Wdeprecated-declarations]

[cffi-1.15.1] [spkg-install]  4523 |                      Py_FileSystemDefaultEncoding, &filename_or_null, &flags))

[cffi-1.15.1] [spkg-install]       |                      ^

[cffi-1.15.1] [spkg-install] /opt/homebrew/opt/pyt...@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13/fileobject.h:22:1: note: 'Py_FileSystemDefaultEncoding' has been explicitly marked deprecated here

[cffi-1.15.1] [spkg-install]    22 | Py_DEPRECATED(3.12) PyAPI_DATA(const char *) Py_FileSystemDefaultEncoding;

[cffi-1.15.1] [spkg-install]       | ^

[cffi-1.15.1] [spkg-install] /opt/homebrew/opt/pyt...@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13/pyport.h:251:54: note: expanded from macro 'Py_DEPRECATED'

[cffi-1.15.1] [spkg-install]   251 | #define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__))

[cffi-1.15.1] [spkg-install]       |                                                      ^

[cffi-1.15.1] [spkg-install] c/_cffi_backend.c:6112:9: error: call to undeclared function '_PyErr_WriteUnraisableMsg'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]

[cffi-1.15.1] [spkg-install]  6112 |         _PyErr_WriteUnraisableMsg(PyText_AS_UTF8(s), NULL);

[cffi-1.15.1] [spkg-install]       |         ^

[cffi-1.15.1] [spkg-install] c/_cffi_backend.c:6112:9: note: did you mean 'PyErr_WriteUnraisable'?

[cffi-1.15.1] [spkg-install] /opt/homebrew/opt/pyt...@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13/pyerrors.h:233:18: note: 'PyErr_WriteUnraisable' declared here

[cffi-1.15.1] [spkg-install]   233 | PyAPI_FUNC(void) PyErr_WriteUnraisable(PyObject *);

[cffi-1.15.1] [spkg-install]       |                  ^

[cffi-1.15.1] [spkg-install] 1 warning and 1 error generated.

[cffi-1.15.1] [spkg-install] error: command '/usr/bin/gcc' failed with exit code 1

[cffi-1.15.1] [spkg-install] 

[cffi-1.15.1] [spkg-install] ERROR Backend subprocess exited when trying to invoke build_wheel

[cffi-1.15.1] [spkg-install] ********************************************************************************

[cffi-1.15.1] [spkg-install] Error building a wheel for cffi-1.15.1

[cffi-1.15.1] [spkg-install] ********************************************************************************

[cffi-1.15.1] ************************************************************************

[cffi-1.15.1] Error installing package cffi-1.15.1

[cffi-1.15.1] ************************************************************************

[cffi-1.15.1] Please email sage-devel (http://groups.google.com/group/sage-devel)

[cffi-1.15.1] explaining the problem and including the log files

[cffi-1.15.1]   /Users/dcoudert/sage/logs/pkgs/cffi-1.15.1.log

[cffi-1.15.1] and

[cffi-1.15.1]   /Users/dcoudert/sage/config.log

[cffi-1.15.1] Describe your computer, operating system, etc.

[cffi-1.15.1] If you want to try to fix the problem yourself, *don't* just cd to

[cffi-1.15.1] /Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/cffi-1.15.1 and type 'make' or whatever is appropriate.

[cffi-1.15.1] Instead, the following commands setup all environment variables

[cffi-1.15.1] correctly and load a subshell for you to debug the error:

[cffi-1.15.1]   (cd '/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/cffi-1.15.1' && '/Users/dcoudert/sage/sage' --buildsh)

[cffi-1.15.1] When you are done debugging, you can type "exit" to leave the subshell.

[cffi-1.15.1] ************************************************************************

make[4]: *** [cffi-SAGE_VENV-no-deps] Error 1

make[3]: *** [/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/lib/sage/installed/cffi-1.15.1] Error 2

make[2]: *** [all-build] Error 2

***************************************************************

Error building Sage.


The following package(s) may have failed to build (not necessarily

during this run of 'make all-build'):


* package:         cffi-1.15.1

  last build time: 23 fév 00:00

  log file:        /Users/dcoudert/sage/logs/pkgs/cffi-1.15.1.log


It is safe to delete any log files and build directories, but they

contain information that is helpful for debugging build problems.

WARNING: If you now run 'make' again, the build directory of the

same version of the package will, by default, be deleted. Set the

environment variable SAGE_KEEP_BUILT_SPKGS=yes to prevent this.


real 195m53.735s user 32m39.535s sys 12m43.597s

make[1]: *** [all-build] Error 1

make: *** [build] Error 2


david....@gmail.com

unread,
Feb 23, 2025, 6:13:11 AMFeb 23
to sage-release
I tried using https://github.com/sagemath/sage/pull/39570 but it's still failing to compile cffi.
Don't know what to do now.

Note that we have no recipe to use cffi from homebrew.

Emmanuel Charpentier

unread,
Feb 23, 2025, 12:52:42 PMFeb 23
to sage-release

On Debian testing running on core i7 + 16 GB RAM, I have the same problem while trying to upgrade froom 10.6.beta7 to beta7 :

charpent@zen-book-flip:/usr/local/sage-10$ grep "error:" logs/pkgs/cffi-1.15.1.log [spkg-install] c/_cffi_backend.c:6112:9: error: implicit declaration of function '_PyErr_WriteUnraisableMsg'; did you mean 'PyErr_WriteUnraisable'? [-Wimplicit-function-declaration] [spkg-install] error: command '/usr/bin/gcc' failed with exit code 1 [spkg-install] c/_cffi_backend.c:6112:9: error: implicit declaration of function '_PyErr_WriteUnraisableMsg'; did you mean 'PyErr_WriteUnraisable'? [-Wimplicit-function-declaration] [spkg-install] error: command '/usr/bin/gcc' failed with exit code 1 correctly and load a subshell for you to debug the error:

Ideas ? Workarounds ?

Emmanuel Charpentier

unread,
Feb 23, 2025, 1:31:48 PMFeb 23
to sage-release

BTW :

charpent@zen-book-flip:/usr/local/sage-10$ dpkg -l "*cffi*" | cat Souhait=inconnU/Installé/suppRimé/Purgé/H=à garder | État=Non/Installé/fichier-Config/dépaqUeté/échec-conFig/H=semi-installé/W=attend-traitement-déclenchements |/ Err?=(aucune)/besoin Réinstallation (État,Err: majuscule=mauvais) ||/ Nom Version Architecture Description +++-=============================-=============-============-================================================================ un cl-cffi <aucune> <aucune> (aucune description n'est disponible) un python-cairocffi-doc <aucune> <aucune> (aucune description n'est disponible) ii python3-brotlicffi 1.1.0.0+ds1-1 amd64 Python CFFI bindings for the reference Brotli encoder/decoder ii python3-cairocffi 1.7.1-3 all cffi-based cairo bindings for Python (Python3) ii python3-cffi 1.17.1-2 all Foreign Function Interface for Python 3 calling C code ii python3-cffi-backend:amd64 1.17.1-2+b1 amd64 Foreign Function Interface for Python 3 calling C code - runtime un python3-cffi-backend-api-9729 <aucune> <aucune> (aucune description n'est disponible) un python3-cffi-backend-api-max <aucune> <aucune> (aucune description n'est disponible) un python3-cffi-backend-api-min <aucune> <aucune> (aucune description n'est disponible) un python3-types-cffi <aucune> <aucune> (aucune description n'est disponible) ii python3-xcffib 1.5.0-1 all CFFI-based Python binding for X

John Cremona

unread,
Feb 23, 2025, 2:13:01 PMFeb 23
to sage-r...@googlegroups.com
About the pari output discrepancy: Doctests should avoid asking for a specific output here as there is more than one correct answer (you are asking for generators of a group). Better is to flag the points output as random, but then also to check something which is invariant,  in this case the regulator.

John

--
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.

Dima Pasechnik

unread,
Feb 23, 2025, 2:20:43 PMFeb 23
to sage-r...@googlegroups.com

Dima Pasechnik

unread,
Feb 23, 2025, 3:10:09 PMFeb 23
to sage-r...@googlegroups.com
cffi is a Python package.
to use system Python packages you need

./configure --enable-system-site-packages

HG

unread,
Feb 23, 2025, 4:06:25 PMFeb 23
to sage-r...@googlegroups.com

With debian trixie I have the same problem (with ubuntu too) I am changing of distro because I can't use any more sagemath ! I use now manjaro but I regret not being able to get ubuntu working, no more deb, no more binary, and can't anymore get sage working it's shade !

Emmanuel Charpentier

unread,
Feb 24, 2025, 1:18:01 AMFeb 24
to sage-release
This seems to have worked : I have ben able to build 10.6.beta7. However, I have not led any specific test.Should I give "positive review" to this ticket ?

Thank you !

Emmanuel Charpentier

unread,
Feb 24, 2025, 1:50:59 AMFeb 24
to sage-release

On Debian testing, upgrading 10.6.beta5 to 10.6.beta7 required the upgrade of cffi (see this subthread above).

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/libs/gap/element.pyx # Killed due to segmentation fault

Reproducible, crashes Sage

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/doctest/test.py # 23 doctests failed

Passes when ran standalone

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/rings/integer.pyx # 1 doctest failed

Reproducible : unexpected stack trace.

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/tests/cmdline.py # 7 doctests failed

Passes when ran standalone.

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/coding/linear_code.py # 4 doctests failed

Reproducible. Common cause : FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/sage-10/local/lib/gap/pkg/guava//bin/wtdist', already reported.

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/repl/ipython_extension.py # 1 doctest failed

Reproducible. The failing test expects a generic error message, my system emits a detailed one. Cosmetic ?

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/interfaces/expect.py # 1 doctest failed

Reproducible. Again, the failed test expects an error message different from the one received.

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/doctest/forker.py # 5 doctests failed

Passes when ran standalone.

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/interfaces/tests.py # 1 doctest failed

Reproducible. Failed test :

********************************************************************** File "src/sage/interfaces/tests.py", line 38, in sage.interfaces.tests Failed example: subprocess.call("echo syntax error | ipython", **kwds) in (0, 1, 120) Expected: True Got: False ********************************************************************** sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/rings/real_mpfr.pyx # 1 doctest failed

Reproducible. (arch-multi-)) reported already.

sage -t --long --warn-long 30.0 --random-seed=215742786508874860161153501192718559436 src/sage/doctest/control.py # 7 doctests failed

Passes when ran standalone.

I can send (by separate mail) whatever logs you may wish.

HTH,

Emmanuel Charpentier

unread,
Feb 24, 2025, 1:53:04 AMFeb 24
to sage-release
I forgot : FWIW, I had again to kill a couple of unresponsive Wolfram calls to complete the documentation build.

HTH,

Thierry Dumont

unread,
Feb 24, 2025, 2:33:34 AMFeb 24
to sage-r...@googlegroups.com
This does not work for me...

I have a Debian testing, uptodate.

make distclean
./configure --enable-system-site-packages
...
make

"
The following package(s) may have failed to build (not necessarily
during this run of 'make all-start'):

* package: cffi-1.15.1
last build time: 24 févr. 08:17
log file: /usr/local/sages/sage/logs/pkgs/cffi-1.15.1.log

* package: giac-1.9.0.15p0
last build time: 24 févr. 08:21
log file: /usr/local/sages/sage/logs/pkgs/giac-1.9.0.15p0.log
build directory:
/usr/local/sages/sage/local/var/tmp/sage/build/giac-1.9.0.15p0
"

About cffti, I have, as system Python package:
python3-cffi-backend:amd64 1.17.1-2+b1


Did I missed something ?

t.d.

david....@gmail.com

unread,
Feb 24, 2025, 2:54:19 AMFeb 24
to sage-release
using https://github.com/sagemath/sage/pull/39571 improves de situation for me, but now compilation fails for ipykernel

[ipykernel-6.27.1] Using cached file /Users/dcoudert/sage/upstream/ipykernel-6.27.1.tar.gz

[ipykernel-6.27.1] Setting up build directory /Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/ipykernel-6.27.1

[ipykernel-6.27.1] No patch files found in ../patches

[ipykernel-6.27.1] Host system: Darwin MAC-04017247 23.6.0 Darwin Kernel Version 23.6.0: Thu Dec 19 20:44:10 PST 2024; root:xnu-10063.141.1.703.2~1/RELEASE_ARM64_T6000 arm64

[ipykernel-6.27.1] C compiler: gcc, Apple clang version 16.0.0 (clang-1600.0.26.6), Target: arm64-apple-darwin23.6.0, Thread model: posix, InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

[ipykernel-6.27.1] No stamp file for package 'ipykernel' in /Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/lib/sage/installed

[ipykernel-6.27.1] No spkg-legacy-uninstall script; nothing to do

[ipykernel-6.27.1] [spkg-install] Installing ipykernel-6.27.1

[ipykernel-6.27.1] [spkg-install] * Creating isolated environment: venv+pip...

[ipykernel-6.27.1] [spkg-install] * Installing packages in isolated environment:

[ipykernel-6.27.1] [spkg-install]   - hatchling>=1.4

[ipykernel-6.27.1] [spkg-install]   - jupyter_client>=6

[ipykernel-6.27.1] [spkg-install] > /Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/bin/python3 -m pip

[ipykernel-6.27.1] [spkg-install]   --python /private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/build-env-

[ipykernel-6.27.1] [spkg-install]   hc_ngemn/bin/python install --use-pep517 --no-warn-script-location --no-

[ipykernel-6.27.1] [spkg-install]   compile -r /var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/build-reqs-

[ipykernel-6.27.1] [spkg-install]   u_3shpob.txt

[ipykernel-6.27.1] [spkg-install] < Looking in links: /Users/dcoudert/sage/local/var/lib/sage/venv-

[ipykernel-6.27.1] [spkg-install]   python3.13/var/lib/sage/wheels

[ipykernel-6.27.1] [spkg-install] < Processing /Users/dcoudert/sage/local/var/lib/sage/venv-

[ipykernel-6.27.1] [spkg-install]   python3.13/var/lib/sage/wheels/jupyter_client-8.3.1-py3-none-any.whl (from

[ipykernel-6.27.1] [spkg-install]   -r /var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/build-reqs-u_3shpob.txt

[ipykernel-6.27.1] [spkg-install]   (line 1))

[ipykernel-6.27.1] [spkg-install] < Processing /Users/dcoudert/sage/local/var/lib/sage/venv-

[ipykernel-6.27.1] [spkg-install]   python3.13/var/lib/sage/wheels/hatchling-1.25.0-py3-none-any.whl (from -r

[ipykernel-6.27.1] [spkg-install]   /var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/build-reqs-u_3shpob.txt

[ipykernel-6.27.1] [spkg-install]   (line 2))

[ipykernel-6.27.1] [spkg-install] < INFO: pip is looking at multiple versions of jupyter-client to determine

[ipykernel-6.27.1] [spkg-install]   which version is compatible with other requirements. This could take a

[ipykernel-6.27.1] [spkg-install]   while.

[ipykernel-6.27.1] [spkg-install] < ERROR: Could not find a version that satisfies the requirement jupyter-

[ipykernel-6.27.1] [spkg-install]   core!=5.0.*,>=4.12 (from jupyter-client) (from versions: none)

[ipykernel-6.27.1] [spkg-install] < ERROR: No matching distribution found for jupyter-core!=5.0.*,>=4.12

[ipykernel-6.27.1] [spkg-install] 

[ipykernel-6.27.1] [spkg-install] Traceback (most recent call last):

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/build/__main__.py", line 178, in _handle_build_error

[ipykernel-6.27.1] [spkg-install]     yield

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/build/__main__.py", line 429, in main

[ipykernel-6.27.1] [spkg-install]     built = build_call(

[ipykernel-6.27.1] [spkg-install]         args.srcdir,

[ipykernel-6.27.1] [spkg-install]     ...<5 lines>...

[ipykernel-6.27.1] [spkg-install]         args.installer,

[ipykernel-6.27.1] [spkg-install]     )

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/build/__main__.py", line 238, in build_package

[ipykernel-6.27.1] [spkg-install]     out = _build(isolation, srcdir, outdir, distribution, config_settings, skip_dependency_check, installer)

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/build/__main__.py", line 170, in _build

[ipykernel-6.27.1] [spkg-install]     return _build_in_isolated_env(srcdir, outdir, distribution, config_settings, installer)

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/build/__main__.py", line 135, in _build_in_isolated_env

[ipykernel-6.27.1] [spkg-install]     env.install(builder.build_system_requires)

[ipykernel-6.27.1] [spkg-install]     ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/build/env.py", line 136, in install

[ipykernel-6.27.1] [spkg-install]     self._env_backend.install_requirements(requirements)

[ipykernel-6.27.1] [spkg-install]     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/build/env.py", line 265, in install_requirements

[ipykernel-6.27.1] [spkg-install]     run_subprocess(cmd)

[ipykernel-6.27.1] [spkg-install]     ~~~~~~~~~~~~~~^^^^^

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/build/_ctx.py", line 71, in run_subprocess

[ipykernel-6.27.1] [spkg-install]     subprocess.run(cmd, capture_output=True, check=True, env=env)

[ipykernel-6.27.1] [spkg-install]     ~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

[ipykernel-6.27.1] [spkg-install]   File "/opt/homebrew/Cellar/pyt...@3.13/3.13.2/Frameworks/Python.framework/Versions/3.13/lib/python3.13/subprocess.py", line 579, in run

[ipykernel-6.27.1] [spkg-install]     raise CalledProcessError(retcode, process.args,

[ipykernel-6.27.1] [spkg-install]                              output=stdout, stderr=stderr)

[ipykernel-6.27.1] [spkg-install] subprocess.CalledProcessError: Command '['/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/bin/python3', '-m', 'pip', '--python', '/private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/build-env-hc_ngemn/bin/python', 'install', '--use-pep517', '--no-warn-script-location', '--no-compile', '-r', '/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/build-reqs-u_3shpob.txt']' returned non-zero exit status 1.

[ipykernel-6.27.1] [spkg-install] 

[ipykernel-6.27.1] [spkg-install] ERROR Command '['/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/bin/python3', '-m', 'pip', '--python', '/private/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/build-env-hc_ngemn/bin/python', 'install', '--use-pep517', '--no-warn-script-location', '--no-compile', '-r', '/var/folders/hw/w6ldqpgn52vdvv03cgbkkr3h3lhtdp/T/build-reqs-u_3shpob.txt']' returned non-zero exit status 1.

[ipykernel-6.27.1] [spkg-install] Warning: building with "python3 -m build --wheel --outdir=dist   ." failed.

[ipykernel-6.27.1] [spkg-install] Retrying with "python3 -m build --wheel --outdir=dist --no-isolation --skip-dependency-check  .".

[ipykernel-6.27.1] [spkg-install] * Building wheel...

[ipykernel-6.27.1] [spkg-install] Traceback (most recent call last):

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/pyproject_hooks/_in_process/_in_process.py", line 373, in <module>

[ipykernel-6.27.1] [spkg-install]     main()

[ipykernel-6.27.1] [spkg-install]     ~~~~^^

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/pyproject_hooks/_in_process/_in_process.py", line 357, in main

[ipykernel-6.27.1] [spkg-install]     json_out["return_val"] = hook(**hook_input["kwargs"])

[ipykernel-6.27.1] [spkg-install]                              ~~~~^^^^^^^^^^^^^^^^^^^^^^^^

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/pyproject_hooks/_in_process/_in_process.py", line 271, in build_wheel

[ipykernel-6.27.1] [spkg-install]     return _build_backend().build_wheel(

[ipykernel-6.27.1] [spkg-install]            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^

[ipykernel-6.27.1] [spkg-install]         wheel_directory, config_settings, metadata_directory

[ipykernel-6.27.1] [spkg-install]         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

[ipykernel-6.27.1] [spkg-install]     )

[ipykernel-6.27.1] [spkg-install]     ^

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/hatchling/build.py", line 58, in build_wheel

[ipykernel-6.27.1] [spkg-install]     return os.path.basename(next(builder.build(directory=wheel_directory, versions=['standard'])))

[ipykernel-6.27.1] [spkg-install]                             ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/hatchling/builders/plugin/interface.py", line 147, in build

[ipykernel-6.27.1] [spkg-install]     build_hook.initialize(version, build_data)

[ipykernel-6.27.1] [spkg-install]     ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/ipykernel-6.27.1/src/hatch_build.py", line 17, in initialize

[ipykernel-6.27.1] [spkg-install]     from ipykernel.kernelspec import make_ipkernel_cmd, write_kernel_spec

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/ipykernel-6.27.1/src/ipykernel/__init__.py", line 7, in <module>

[ipykernel-6.27.1] [spkg-install]     from .connect import *

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/ipykernel-6.27.1/src/ipykernel/connect.py", line 12, in <module>

[ipykernel-6.27.1] [spkg-install]     import jupyter_client

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/jupyter_client/__init__.py", line 3, in <module>

[ipykernel-6.27.1] [spkg-install]     from .asynchronous import AsyncKernelClient

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/jupyter_client/asynchronous/__init__.py", line 1, in <module>

[ipykernel-6.27.1] [spkg-install]     from .client import AsyncKernelClient  # noqa

[ipykernel-6.27.1] [spkg-install]     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/jupyter_client/asynchronous/client.py", line 8, in <module>

[ipykernel-6.27.1] [spkg-install]     from ..channels import AsyncZMQSocketChannel, HBChannel

[ipykernel-6.27.1] [spkg-install]   File "/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/jupyter_client/channels.py", line 12, in <module>

[ipykernel-6.27.1] [spkg-install]     from jupyter_core.utils import ensure_async

[ipykernel-6.27.1] [spkg-install] ModuleNotFoundError: No module named 'jupyter_core'

[ipykernel-6.27.1] [spkg-install] 

[ipykernel-6.27.1] [spkg-install] ERROR Backend subprocess exited when trying to invoke build_wheel

[ipykernel-6.27.1] [spkg-install] ********************************************************************************

[ipykernel-6.27.1] [spkg-install] Error building a wheel for ipykernel-6.27.1

[ipykernel-6.27.1] [spkg-install] ********************************************************************************

[ipykernel-6.27.1] ************************************************************************

[ipykernel-6.27.1] Error installing package ipykernel-6.27.1

[ipykernel-6.27.1] ************************************************************************

[ipykernel-6.27.1] Please email sage-devel (http://groups.google.com/group/sage-devel)

[ipykernel-6.27.1] explaining the problem and including the log files

[ipykernel-6.27.1]   /Users/dcoudert/sage/logs/pkgs/ipykernel-6.27.1.log

[ipykernel-6.27.1] and

[ipykernel-6.27.1]   /Users/dcoudert/sage/config.log

[ipykernel-6.27.1] Describe your computer, operating system, etc.

[ipykernel-6.27.1] If you want to try to fix the problem yourself, *don't* just cd to

[ipykernel-6.27.1] /Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/ipykernel-6.27.1 and type 'make' or whatever is appropriate.

[ipykernel-6.27.1] Instead, the following commands setup all environment variables

[ipykernel-6.27.1] correctly and load a subshell for you to debug the error:

[ipykernel-6.27.1]   (cd '/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/tmp/sage/build/ipykernel-6.27.1' && '/Users/dcoudert/sage/sage' --buildsh)

[ipykernel-6.27.1] When you are done debugging, you can type "exit" to leave the subshell.

[ipykernel-6.27.1] ************************************************************************

make[4]: *** [ipykernel-SAGE_VENV-no-deps] Error 1

make[3]: *** [/Users/dcoudert/sage/local/var/lib/sage/venv-python3.13/var/lib/sage/installed/ipykernel-6.27.1] Error 2

make[2]: *** [all-build] Error 2

***************************************************************

Error building Sage.


The following package(s) may have failed to build (not necessarily

during this run of 'make all-build'):


* package:         ipykernel-6.27.1

  last build time: 24 fév 08:41

  log file:        /Users/dcoudert/sage/logs/pkgs/ipykernel-6.27.1.log


It is safe to delete any log files and build directories, but they

contain information that is helpful for debugging build problems.

WARNING: If you now run 'make' again, the build directory of the

same version of the package will, by default, be deleted. Set the

environment variable SAGE_KEEP_BUILT_SPKGS=yes to prevent this.


make[1]: *** [all-build] Error 1

make: *** [build] Error 2

MA


Emmanuel Charpentier

unread,
Feb 24, 2025, 5:20:28 AMFeb 24
to sage-release

Le lundi 24 février 2025 à 08:33:34 UTC+1, tdumont a écrit :

This does not work for me...

I have a Debian testing, uptodate.

make distclean
./configure --enable-system-site-packages
...
make

In a new branch, I tried --enable-system-site-packages, which got me some errors building some module that, for dear life, I can’t remember. I reconfigured leaving it out but pulled #39571, which got me the results I reported.

Do ypu have the Wolfram engine installed ? I’m hunting the source of the Wolfram calls that freeze my doc building attempts, and am interested by what happens on other systems.

HTH,

HG

unread,
Feb 24, 2025, 6:57:42 AMFeb 24
to sage-r...@googlegroups.com

Idem for me I tried 3 to build and it finished to success

Dima Pasechnik

unread,
Feb 24, 2025, 10:33:21 AMFeb 24
to sage-r...@googlegroups.com


On 24 February 2025 00:18:00 GMT-06:00, Emmanuel Charpentier <emanuel.c...@gmail.com> wrote:
>This seems to have worked : I have ben able to build 10.6.beta7. However, I
>have not led any specific test.Should I give "positive review" to this
>ticket ?

yes please.

Dima Pasechnik

unread,
Feb 24, 2025, 11:16:58 AMFeb 24
to sage-r...@googlegroups.com
On Mon, Feb 24, 2025 at 1:33 AM Thierry Dumont
<tdu...@math.univ-lyon1.fr> wrote:
>
> This does not work for me...
>
> I have a Debian testing, uptodate.
>
> make distclean
> ./configure --enable-system-site-packages
> ...
> make
>
> "
> The following package(s) may have failed to build (not necessarily
> during this run of 'make all-start'):
>
> * package: cffi-1.15.1
> last build time: 24 févr. 08:17
> log file: /usr/local/sages/sage/logs/pkgs/cffi-1.15.1.log
>
> * package: giac-1.9.0.15p0
> last build time: 24 févr. 08:21
> log file: /usr/local/sages/sage/logs/pkgs/giac-1.9.0.15p0.log
> build directory:
> /usr/local/sages/sage/local/var/tmp/sage/build/giac-1.9.0.15p0
> "
>
> About cffti, I have, as system Python package:
> python3-cffi-backend:amd64 1.17.1-2+b1
>
>
> Did I missed something ?

your cffi error might be just a leftover from a previous run.
Check your config.log on whether the system-wide cffi was picked to be used.

But giac, as usual, if a problem.
By the way, you might try something different w.r.t. giac - namely,
make it optional.
See https://github.com/sagemath/sage/pull/39376


>
> t.d.
>
> Le 23/02/2025 à 21:09, Dima Pasechnik a écrit :
> > cffi is a Python package.
> > to use system Python packages you need
> >
> > ./configure --enable-system-site-packages
> >
> >
>
> --
> 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/fb5da37a-8a31-4597-b828-7761b15b01dd%40math.univ-lyon1.fr.

John H Palmieri

unread,
Feb 24, 2025, 6:44:02 PMFeb 24
to sage-release
On OS X 15.3.1 with many homebrew packages installed, including both Python 3.12 and Python 3.13:

- if I use Python 3.13, `pillow` and `cffi` fail to build. (I used "./configure", and I also tried after applying the patch from #39570)
- if I use Python 3.12, then `pillow` and `cffi` and indeed everything builds successfully. (I used "./configure --with-python=`which python3.12`")

Dima Pasechnik

unread,
Feb 24, 2025, 10:34:13 PMFeb 24
to sage-r...@googlegroups.com
On Mon, Feb 24, 2025 at 5:44 PM John H Palmieri <jhpalm...@gmail.com> wrote:
>
> On OS X 15.3.1 with many homebrew packages installed, including both Python 3.12 and Python 3.13:
>
> - if I use Python 3.13, `pillow` and `cffi` fail to build. (I used "./configure", and I also tried after applying the patch from #39570)

how about using installing pillow and cffi in Homebrew, and doing

./configure --enable-system-site-packages

This should pick them from Homebrew. (If it doesn't it's a Sage bug I suppose)

Frankly speaking I am less than excited to try to figure out what goes
wrong in sdh_pip_install
in this case. Homebrew can do it...
> --
> 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/aa27984d-e9b6-4eb4-b4a1-a422672e26a6n%40googlegroups.com.

John H Palmieri

unread,
Feb 25, 2025, 12:52:36 AMFeb 25
to sage-release
Sage should work out of the box without "--enable-system-site-packages". If it doesn't, that's a bug in Sage. How about we don't allow Python 3.13 if it's broken? Why wasn't this caught in testing?

Dima Pasechnik

unread,
Feb 25, 2025, 9:46:41 AMFeb 25
to sage-r...@googlegroups.com


On 24 February 2025 23:52:36 GMT-06:00, John H Palmieri <jhpalm...@gmail.com> wrote:
>Sage should work out of the box without "--enable-system-site-packages".


The box has become so heavy that one needs a forklift to do anything with it :-)


> If
>it doesn't, that's a bug in Sage. How about we don't allow Python 3.13 if
>it's broken? Why wasn't this caught in testing?

well, Sage with Python 3.13 works on Linux,
and is default on some.

It appears that there are dozens of macOS/apple toolchain/apple hardware combos, and each of them has its very own set of bugs, misfeatures, multiple dodgy Python installs, etc.

We can't possibly test for all of them.

And please don't force on Sage developers the need to dig up and reproduce solutions by Homebrew, which has 10 times more developers and nontrivial funding, solutions which are already there.

What's wrong with using the flag above, if it works?

I hope William S. forgives me if I quote his up to date opinion on Macs:

-----
For me, Macs are reasonable as basically "Chromebooks" that can also
run Linux VM's pretty well and keep track of photos and video. Beyond
that it's extremely painful, and I vastly prefer Linux for all things
dev/server/remote.
-----

My opinion is similar - except that the only use of Mac I have is to cause myself extreme pain by trying to fix never ending macOS - specific
issues.

On macOS, either we embrace Homebrew and use it to get external dependencies, or we use Conda. Current "build everything from ground up" has become next to impossible in any reliable way.


Dima

Marc Culler

unread,
Feb 25, 2025, 10:26:04 AMFeb 25
to sage-release
On Tuesday, February 25, 2025 at 8:46:41 AM UTC-6 Dima Pasechnik wrote:

On macOS, either we embrace Homebrew and use it to get external dependencies, or we use Conda. Current "build everything from ground up" has become next to impossible in any reliable way.

The Sage_macOS project always builds Sage "from the ground up" with no homebrew packages or any other external libraries.  That has worked for every  version of Sage from 9.2 to 10.6beta4.  It is not "next to impossible".  Most of the time it "just works".  Rarely a small amount of tweaking is needed, but none has been needed for the last two releases.

- Marc

Emmanuel Charpentier

unread,
Feb 25, 2025, 11:21:32 AMFeb 25
to sage-release
This release seems to have broken "our" exception report system. Any error raises a second error for its report. As an example, ask for the sum of two undefined variables :

```
sage: truc+machin
Unexpected exception formatting exception. Falling back to standard exception

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/IPython/core/interactiveshell.py", line 3577, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
    ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<ipython-input-188-a6f685eae0e2>", line 1, in <module>
    truc+machin
    ^^^^
NameError: name 'truc' is not defined
```

This is the expected error message. But :

```
During handling of the above exception, another exception occurred:


Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/IPython/core/interactiveshell.py", line 2168, in showtraceback
    stb = self.InteractiveTB.structured_traceback(
        etype, value, tb, tb_offset=tb_offset
    )
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1457, in structured_traceback
    return FormattedTB.structured_traceback(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        self, etype, evalue, etb, tb_offset, number_of_lines_of_context
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1348, in structured_traceback
    return VerboseTB.structured_traceback(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        self, etype, value, tb, tb_offset, number_of_lines_of_context
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1195, in structured_traceback
    formatted_exception = self.format_exception_as_a_whole(etype, evalue, etb, number_of_lines_of_context,
                                                           tb_offset)
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1085, in format_exception_as_a_whole
    self.get_records(etb, number_of_lines_of_context, tb_offset) if etb else []
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1182, in get_records
    res = list(stack_data.FrameInfo.stack_data(etb, options=options))[tb_offset:]
          ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/stack_data/core.py", line 597, in stack_data
    yield from collapse_repeated(
    ...<4 lines>...
    )
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/stack_data/utils.py", line 83, in collapse_repeated
    yield from map(mapper, original_group)
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/stack_data/core.py", line 587, in mapper
    return cls(f, options)
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/stack_data/core.py", line 551, in __init__
    self.executing = Source.executing(frame_or_tb)
                     ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/executing/executing.py", line 283, in executing
    assert_(new_stmts <= stmts)
    ~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/executing/executing.py", line 80, in assert_
    raise AssertionError(str(message))
AssertionError
```

This is understandable only by the developer's of this part of Sage's error handling. Which I am*not*.

This problem deserves an issue (probably critical, *i. e.* deserving a solution before the vext release). Advice for creating this issue ?

HTH,

Le samedi 22 février 2025 à 00:40:17 UTC+1, Volker Braun a écrit :

Dima Pasechnik

unread,
Feb 25, 2025, 11:54:36 AMFeb 25
to sage-r...@googlegroups.com
We were lucky, the luck has ran out.
A lot of time in the past 10 years macOS "native", and general, support has been hanging by the thread, it's only with a lot of effort it was kept alive. E.g. I personally spent eons of time on this; it certainly didn't help my career, but I felt like I was helping the community. Now it seems that the Sage macOS community assumes there always will be ample supply of people to maintain the status quo. This idea is wrong.

Once again: I don't care any more about anything on macOS which works with Homebrew, but doesn't work without it, and I think this should be the official Sage policy.

We should work on adding more Homebrew formulae to support packages which are not on Homebrew. They don't need to make it into the main Homebrew repo, but can stay as separate installable formulae in sagemath org repos.
Just as GAP has:
<https://github.com/sagemath/homebrew-science>
and what I did as a small experiment here:
<https://github.com/sagemath/homebrew-science>

Dima



>
>- Marc
>

John H Palmieri

unread,
Feb 25, 2025, 12:16:24 PMFeb 25
to sage-release
Maybe this is naive, but if you're testing a change from the old situation, where Python 3.13 was not allowed, to now allowing it, I might imagine that you would test it on standard supported platforms, like OS X with Python 3.13 installed via homebrew. We should back out the change until it's implemented correctly.

david....@gmail.com

unread,
Feb 25, 2025, 1:03:20 PMFeb 25
to sage-release
I agree that we should use as many homebrew packages as possible, but how can we ensure that we follow the upgrades ?
For instance the versions of openblas (0.3.29), gsl (2.8), numpy (2.2.3), scipy (1.15.2) and pari (2.17.1) are newer on homebrew than what we accept.

I'm currently facing the following issue:
ipykernel fails to compile and reports that it is unable to find jupyter_core. But configure says:
jupyter_core:                   using system package; SPKG will not be installed

I'm currently trying to compile from scratch with --with-system-jupyter_core=no. We'll see if it's better. 

Dima Pasechnik

unread,
Feb 25, 2025, 1:10:47 PMFeb 25
to sage-r...@googlegroups.com
On Tue, Feb 25, 2025 at 11:16 AM John H Palmieri <jhpalm...@gmail.com> wrote:
>
> Maybe this is naive, but if you're testing a change from the old situation, where Python 3.13 was not allowed, to now allowing it, I might imagine that you would test it on standard supported platforms, like OS X with Python 3.13 installed via homebrew. We should back out the change until it's implemented correctly.

There is always a Mac out there on which for some reason Sage doesn't
install, actually, it always was like this.

Shouldn't we expect an expert user like you, who noticed an issue to
actively debug it and possibly fix, rather than wait for someone to
fix it?
As I said, there is a workaround to avoid this issue, but you complain
that this workaround is not what "is expected", demand rolling
something back, while not telling why it doesn't work for you without
it.
Maybe it's a problem on your computer only.
The less we rely on flaky vendored packages, the less likely breakages
occur. As the number of packages we vendor approaches 500, it's a
Herculean task to make sure they all work. That's why I keep saying
Homebrew to Mac users.

Dima
> To view this discussion visit https://groups.google.com/d/msgid/sage-release/f74cd9ef-3ec4-42dc-8ae4-ad8654490f9en%40googlegroups.com.

Marc Culler

unread,
Feb 25, 2025, 1:25:42 PMFeb 25
to sage-r...@googlegroups.com
Using as many homebrew packages as possible is fine as a philosophy for users building sage on their own computer for their own use and wanting to do so in as short a time as possible. It is not a good idea when building a binary distribution for many reasons.

However, I claim that if you search through sage-devel looking for macOS build issues you will find that the vast majority are caused by Homebrew package installations being out of date or being different from what sage expects or being misinstalled with duplicate installations.
Using Homebrew is not a panacea.

Also, requiring Homebrew to build Sage will greatly complicate the job of building a binary distribution of Sage.  I think that would be a mistake and I think that the 25,000 people who have downloaded SageMath-10.5 from the Sage_macOS github site would agree.

As John says, Sage should work out of the box.  That is what makes our self-contained binary distribution possible.

- Marc

You received this message because you are subscribed to a topic in the Google Groups "sage-release" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/sage-release/8u71odPIXD8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to sage-release...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/sage-release/2c938919-99f9-49e2-865e-6bcc011a0098n%40googlegroups.com.

Dima Pasechnik

unread,
Feb 25, 2025, 1:36:27 PMFeb 25
to sage-r...@googlegroups.com
On Tue, Feb 25, 2025 at 12:03 PM david....@gmail.com
<david....@gmail.com> wrote:
>
> I agree that we should use as many homebrew packages as possible, but how can we ensure that we follow the upgrades ?
> For instance the versions of openblas (0.3.29), gsl (2.8), numpy (2.2.3), scipy (1.15.2) and pari (2.17.1) are newer on homebrew than what we accept.

Because the update of pari is stalled due to a bug reported?
A Pari expert should step up and tell whether it's an upstream bug, or not.
https://github.com/sagemath/sage/pull/38749

openblas (of any version less than 0.3.99) should be accepted,
provided it is recognised by pkg-config
(you'd need to run source .homebrew-build-env for the latter).
Same applies to gsl.

numpy and scipy are Python packages, you need

./configure --enable-system-site-packages

to have them from "outside".
There are no version constraints on them imposed.
I have a meanwhile bitrotten PR to upgrade numpy and scipy, and
despite requesting review from 5 people, only two responded.
https://github.com/sagemath/sage/pull/38846, back in Oct 2024.
Then reviewers just disappeared there...
Some of these updates are now in separate PRs. Some need to be done.

See, that's what I mean by "Sage has too many vendored packages".
These packages are bog-standard PyPI packages, we could have followed
the new versions if we didn't have this so beloved by some version
locks.

Dima
> To view this discussion visit https://groups.google.com/d/msgid/sage-release/2c938919-99f9-49e2-865e-6bcc011a0098n%40googlegroups.com.

Dima Pasechnik

unread,
Feb 25, 2025, 1:45:56 PMFeb 25
to sage-r...@googlegroups.com
On Tue, Feb 25, 2025 at 12:25 PM Marc Culler <marc....@gmail.com> wrote:
>
> Using as many homebrew packages as possible is fine as a philosophy for users building sage on their own computer for their own use and wanting to do so in as short a time as possible. It is not a good idea when building a binary distribution for many reasons.

Sage is not providing binary distributions. You are, but you should
not hold the whole project hostage, just because
you don't like or don't know how to do it with Homebrew properly.
You have never explained why you can't pull some packages you need
from Homebrew, and that's probably because you prefer the status quo.

>
> However, I claim that if you search through sage-devel looking for macOS build issues you will find that the vast majority are caused by Homebrew package installations being out of date or being different from what sage expects or being misinstalled with duplicate installations.
> Using Homebrew is not a panacea.

Yes, because Sage macOS developers should stop sabotaging Homebrew
support (you are among the saboteurs, sorry), that's why you have the
present situation.

Dima
> To view this discussion visit https://groups.google.com/d/msgid/sage-release/CALcZXRGwmMQ--qtknGGQSR%2BDv%2BBFbG_fSGs9sofHShV4Fd3V%2BQ%40mail.gmail.com.

david....@gmail.com

unread,
Feb 25, 2025, 2:01:02 PMFeb 25
to sage-release
my homebrew install of openblas (0.3.29)  is not accepted, as can be seen in the config.log file.

## --------------------------------------------------------- ##
## Checking whether SageMath should install SPKG openblas... ##
## --------------------------------------------------------- ##
configure:18884: checking whether any of gfortran is installed as or will be installed as SPKG
configure:18894: result: no
configure:18908: checking for openblas >= 0.2.20 openblas < 0.3.99
configure:18915: $PKG_CONFIG --exists --print-errors "openblas >= 0.2.20 openblas < 0.3.99"
configure:18918: $? = 0
configure:18932: $PKG_CONFIG --exists --print-errors "openblas >= 0.2.20 openblas < 0.3.99"
configure:18935: $? = 0
configure:19931: result: yes
configure:19940: $PKG_CONFIG --exists --print-errors "openblas"
configure:19943: $? = 0
configure:19963: checking for cblas_dgemm
configure:19963: g++ -std=gnu++11 -std=gnu++11 -o conftest    conftest.cpp -L/opt/homebrew/Cellar/openblas/0.3.29/lib -lopenblas -lbz2 -lglpk -lgmp -lm  >&5
configure:19963: $? = 0
configure:19963: result: yes
configure:20044: checking for dgeqrf
configure:20044: g++ -std=gnu++11 -std=gnu++11 -o conftest    conftest.cpp -L/opt/homebrew/Cellar/openblas/0.3.29/lib -lopenblas -lbz2 -lglpk -lgmp -lm  >&5
Undefined symbols for architecture arm64:
  "_dgeqrf", referenced from:
      _main in conftest-e6c8b5.o
ld: symbol(s) not found for architecture arm64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
configure:20044: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "Sage"
| #define PACKAGE_TARNAME "sage"
| #define PACKAGE_VERSION "10.6.beta7"
| #define PACKAGE_STRING "Sage 10.6.beta7"
| #define PACKAGE_BUGREPORT "sage-...@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "sage"
| #define VERSION "10.6.beta7"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define STDC_HEADERS 1
| #define HAVE_LIBM 1
| #define HAVE_CXX11 1
| #define HAVE_GMP_H 1
| #define ABSOLUTE_GMP_H "///opt/homebrew/include/gmp.h"
| #define HAVE_BOOST /**/
| /* end confdefs.h.  */
| /* Define dgeqrf to an innocuous variant, in case <limits.h> declares dgeqrf.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define dgeqrf innocuous_dgeqrf
|
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char dgeqrf (void); below.  */
|
| #include <limits.h>
| #undef dgeqrf
|
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char dgeqrf (void);
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_dgeqrf || defined __stub___dgeqrf
| choke me
| #endif
|
| int
| main (void)
| {
| return dgeqrf ();
|   ;
|   return 0;
| }
configure:20044: result: no
configure:20051: checking for dgeqrf_
configure:20051: g++ -std=gnu++11 -std=gnu++11 -o conftest    conftest.cpp -L/opt/homebrew/Cellar/openblas/0.3.29/lib -lopenblas -lbz2 -lglpk -lgmp -lm  >&5
configure:20051: $? = 0
configure:20051: result: yes
configure:20058: checking for DGEQRF
configure:20058: g++ -std=gnu++11 -std=gnu++11 -o conftest    conftest.cpp -L/opt/homebrew/Cellar/openblas/0.3.29/lib -lopenblas -lbz2 -lglpk -lgmp -lm  >&5
Undefined symbols for architecture arm64:
  "_DGEQRF", referenced from:
      _main in conftest-8dfd93.o
ld: symbol(s) not found for architecture arm64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
configure:20058: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "Sage"
| #define PACKAGE_TARNAME "sage"
| #define PACKAGE_VERSION "10.6.beta7"
| #define PACKAGE_STRING "Sage 10.6.beta7"
| #define PACKAGE_BUGREPORT "sage-...@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "sage"
| #define VERSION "10.6.beta7"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define STDC_HEADERS 1
| #define HAVE_LIBM 1
| #define HAVE_CXX11 1
| #define HAVE_GMP_H 1
| #define ABSOLUTE_GMP_H "///opt/homebrew/include/gmp.h"
| #define HAVE_BOOST /**/
| /* end confdefs.h.  */
| /* Define DGEQRF to an innocuous variant, in case <limits.h> declares DGEQRF.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define DGEQRF innocuous_DGEQRF
|
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char DGEQRF (void); below.  */
|
| #include <limits.h>
| #undef DGEQRF
|
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char DGEQRF (void);
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_DGEQRF || defined __stub___DGEQRF
| choke me
| #endif
|
| int
| main (void)
| {
| return DGEQRF ();
|   ;
|   return 0;
| }
configure:20058: result: no
configure:20065: checking for DGEQRF_
configure:20065: g++ -std=gnu++11 -std=gnu++11 -o conftest    conftest.cpp -L/opt/homebrew/Cellar/openblas/0.3.29/lib -lopenblas -lbz2 -lglpk -lgmp -lm  >&5
Undefined symbols for architecture arm64:
  "_DGEQRF_", referenced from:
      _main in conftest-ff1fe7.o
ld: symbol(s) not found for architecture arm64
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
configure:20065: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "Sage"
| #define PACKAGE_TARNAME "sage"
| #define PACKAGE_VERSION "10.6.beta7"
| #define PACKAGE_STRING "Sage 10.6.beta7"
| #define PACKAGE_BUGREPORT "sage-...@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "sage"
| #define VERSION "10.6.beta7"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define STDC_HEADERS 1
| #define HAVE_LIBM 1
| #define HAVE_CXX11 1
| #define HAVE_GMP_H 1
| #define ABSOLUTE_GMP_H "///opt/homebrew/include/gmp.h"
| #define HAVE_BOOST /**/
| /* end confdefs.h.  */
| /* Define DGEQRF_ to an innocuous variant, in case <limits.h> declares DGEQRF_.
|    For example, HP-UX 11i <limits.h> declares gettimeofday.  */
| #define DGEQRF_ innocuous_DGEQRF_
|
| /* System header to define __stub macros and hopefully few prototypes,
|    which can conflict with char DGEQRF_ (void); below.  */
|
| #include <limits.h>
| #undef DGEQRF_
|
| /* Override any GCC internal prototype to avoid an error.
|    Use char because int might match the return type of a GCC
|    builtin and then its argument prototype would still apply.  */
| #ifdef __cplusplus
| extern "C"
| #endif
| char DGEQRF_ (void);
| /* The GNU C library defines this for functions which it implements
|     to always fail with ENOSYS.  Some functions are actually named
|     something starting with __ and the normal name is an alias.  */
| #if defined __stub_DGEQRF_ || defined __stub___DGEQRF_
| choke me
| #endif
|
| int
| main (void)
| {
| return DGEQRF_ ();
|   ;
|   return 0;
| }
configure:20065: result: no
configure:20157: checking the OpenBLAS version using openblas_get_config
configure:20185: gcc -o conftest -I/opt/homebrew/Cellar/openblas/0.3.29/include -fopenmp -g -O2   conftest.c -L/opt/homebrew/Cellar/openblas/0.3.29/lib -lopenblas -lbz2 -lglpk -lgmp -lm  >&5
clang: error: unsupported option '-fopenmp'
clang: error: unsupported option '-fopenmp'
configure:20185: $? = 1
configure: program exited with status 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "Sage"
| #define PACKAGE_TARNAME "sage"
| #define PACKAGE_VERSION "10.6.beta7"
| #define PACKAGE_STRING "Sage 10.6.beta7"
| #define PACKAGE_BUGREPORT "sage-...@googlegroups.com"
| #define PACKAGE_URL ""
| #define PACKAGE "sage"
| #define VERSION "10.6.beta7"
| #define HAVE_STDIO_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_UNISTD_H 1
| #define STDC_HEADERS 1
| #define HAVE_LIBM 1
| #define HAVE_CXX11 1
| #define HAVE_GMP_H 1
| #define ABSOLUTE_GMP_H "///opt/homebrew/include/gmp.h"
| #define HAVE_BOOST /**/
| /* end confdefs.h.  */
|           #include <string.h>
|                             char *openblas_get_config(void);
| int
| main (void)
| {
| if (!strncmp(openblas_get_config(), "OpenBLAS 0.3.22", 15)) return 1;
|   ;
|   return 0;
| }
|
configure:20191: result: known bad version
configure:20261: no suitable system package found for SPKG openblas

Emmanuel Charpentier

unread,
Feb 25, 2025, 2:42:57 PMFeb 25
to sage-release
Le mardi 25 février 2025 à 17:54:36 UTC+1, Dima Pasechnik a écrit :


On 25 February 2025 09:26:04 GMT-06:00, Marc Culler <marc....@gmail.com> wrote:
>
>
>On Tuesday, February 25, 2025 at 8:46:41 AM UTC-6 Dima Pasechnik wrote:
>
>
>On macOS, either we embrace Homebrew and use it to get external
>dependencies, or we use Conda. Current "build everything from ground up"
>has become next to impossible in any reliable way.
>
>
>The Sage_macOS project always builds Sage "from the ground up" with no
>homebrew packages or any other external libraries. That has worked for
>every version of Sage from 9.2 to 10.6beta4. It is not "next to
>impossible". Most of the time it "just works". Rarely a small amount of
>tweaking is needed, but none has been needed for the last two releases.

We were lucky, the luck has ran out.
A lot of time in the past 10 years macOS "native", and general, support has been hanging by the thread, it's only with a lot of effort it was kept alive. E.g. I personally spent eons of time on this; it certainly didn't help my career, but I felt like I was helping the community. Now it seems that the Sage macOS community assumes there always will be ample supply of people to maintain the status quo. This idea is wrong.

Once again: I don't care any more about anything on macOS which works with Homebrew, but doesn't work without it, and I think this should be the official Sage policy.

This is reminescent of the heroic (really ! No irony here...) efforts of EM Bray to maintain a cygwin version. He had to throw the towel.

Maybe Mac users could consider the current solution used by Windows users : install a virtual machine using some "Real Unix" distribution, and install Sage there. It's supposed to be liveable on Windows...

Advantage : no more holy wars on how to (mis-)use Homebrew. Disadvantage : new holy wars on the choice of "Real Unix"...

Unknown tome (I would't touch Mac OS in a class A aseptic room...) : what are the "good" virtual machines available to Mac OS ? And how good are they ?
 
We should work on adding more Homebrew formulae to support packages which are not on Homebrew. They don't need to make it into the main Homebrew repo, but can stay as separate installable formulae in sagemath org repos.
Just as GAP has:
<https://github.com/sagemath/homebrew-science>
and what I did as a small experiment here:
<https://github.com/sagemath/homebrew-science>

Same link ?
 
Dima



>
>- Marc
>

Marc Culler

unread,
Feb 25, 2025, 2:50:15 PMFeb 25
to sage-release
I just built Sage 10.6beta7 with no errors on a macOS 15.3.1 system with an M1 CPU.

This was using no HomeBrew packages and no external libraries.  So in particular it used Python 3.12.5 as provided by the python3 spkg.  Pillow, cffi and giac all built without errors.

My guess is that Sage's pillow and cffi spkgs are using versions which are not compatible with Python 3.13.  Sage is using Pillow 10.1.0 (Oct 15, 2023)while the current version is 11.1.0. Sage is using cffi 1.15.1(June 30, 2022) while the current version is 1.17.1.  So both of those spkgs are using versions of the "upstream" packages that predate the release of Python 3.13.  I would bet that a straightforward version update of those spkgs would make the builds work with Python 3.13.

I don't think I would make any bets about giac, however.

- Marc

Dima Pasechnik

unread,
Feb 25, 2025, 2:59:05 PMFeb 25
to sage-r...@googlegroups.com
On Tue, Feb 25, 2025 at 1:01 PM david....@gmail.com
<david....@gmail.com> wrote:
>
> my homebrew install of openblas (0.3.29) is not accepted, as can be seen in the config.log file.

can you find anything like "dgeqrf" in the output of

otool -TV /opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.dylib

not 100% sure about the exact name of the dylib , but you get the idea, right?
The issue comes from
https://github.com/sagemath/sagetrac-mirror/commit/71ac6a5e18ad2e08383a122ef305df593a34aa3a
which is a very hacky way to avoid the use of gfortran. We can re-work
it if needed.

Dima
> To view this discussion visit https://groups.google.com/d/msgid/sage-release/c631ea8b-7c97-433f-9aa6-bf39686332b7n%40googlegroups.com.

Dima Pasechnik

unread,
Feb 25, 2025, 3:03:23 PMFeb 25
to sage-r...@googlegroups.com
On Tue, Feb 25, 2025 at 1:50 PM Marc Culler <marc....@gmail.com> wrote:
>
> I just built Sage 10.6beta7 with no errors on a macOS 15.3.1 system with an M1 CPU.
>
> This was using no HomeBrew packages and no external libraries. So in particular it used Python 3.12.5 as provided by the python3 spkg. Pillow, cffi and giac all built without errors.
>
> My guess is that Sage's pillow and cffi spkgs are using versions which are not compatible with Python 3.13. Sage is using Pillow 10.1.0 (Oct 15, 2023)while the current version is 11.1.0. Sage is using cffi 1.15.1(June 30, 2022) while the current version is 1.17.1.

I think David was reporting on testing the update of cffi and pillow as done on

https://github.com/sagemath/sage/pull/39571

Please feel free to review it too, by the way.

Dima
> To view this discussion visit https://groups.google.com/d/msgid/sage-release/2044b17b-752d-4ea8-9c42-32d627f4be6bn%40googlegroups.com.

Dima Pasechnik

unread,
Feb 25, 2025, 3:10:51 PMFeb 25
to sage-r...@googlegroups.com, William Stein
On Tue, Feb 25, 2025 at 1:42 PM Emmanuel Charpentier
<emanuel.c...@gmail.com> wrote:
>
>
>
> Le mardi 25 février 2025 à 17:54:36 UTC+1, Dima Pasechnik a écrit :
>
>
>
> On 25 February 2025 09:26:04 GMT-06:00, Marc Culler <marc....@gmail.com> wrote:
> >
> >
> >On Tuesday, February 25, 2025 at 8:46:41 AM UTC-6 Dima Pasechnik wrote:
> >
> >
> >On macOS, either we embrace Homebrew and use it to get external
> >dependencies, or we use Conda. Current "build everything from ground up"
> >has become next to impossible in any reliable way.
> >
> >
> >The Sage_macOS project always builds Sage "from the ground up" with no
> >homebrew packages or any other external libraries. That has worked for
> >every version of Sage from 9.2 to 10.6beta4. It is not "next to
> >impossible". Most of the time it "just works". Rarely a small amount of
> >tweaking is needed, but none has been needed for the last two releases.
>
> We were lucky, the luck has ran out.
> A lot of time in the past 10 years macOS "native", and general, support has been hanging by the thread, it's only with a lot of effort it was kept alive. E.g. I personally spent eons of time on this; it certainly didn't help my career, but I felt like I was helping the community. Now it seems that the Sage macOS community assumes there always will be ample supply of people to maintain the status quo. This idea is wrong.
>
> Once again: I don't care any more about anything on macOS which works with Homebrew, but doesn't work without it, and I think this should be the official Sage policy.
>
>
> This is reminescent of the heroic (really ! No irony here...) efforts of EM Bray to maintain a cygwin version. He had to throw the towel.
>
> Maybe Mac users could consider the current solution used by Windows users : install a virtual machine using some "Real Unix" distribution, and install Sage there. It's supposed to be liveable on Windows...
>
> Advantage : no more holy wars on how to (mis-)use Homebrew. Disadvantage : new holy wars on the choice of "Real Unix"...
>
> Unknown tome (I would't touch Mac OS in a class A aseptic room...) : what are the "good" virtual machines available to Mac OS ? And how good are they ?

Surely William knows all about it. I cc to him, in case.

>
>
> We should work on adding more Homebrew formulae to support packages which are not on Homebrew. They don't need to make it into the main Homebrew repo, but can stay as separate installable formulae in sagemath org repos.
> Just as GAP has:
> <https://github.com/sagemath/homebrew-science>
> and what I did as a small experiment here:
> <https://github.com/sagemath/homebrew-science>
>
oops, the 1st one should be https://github.com/gap-system/homebrew-gap
>
> Same link ?
>
>
> Dima
>
>
>
> >
> >- Marc
> >
>
> --
> 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/ec6badd1-f91e-4c76-9670-1b089cb3a04an%40googlegroups.com.

Marc Culler

unread,
Feb 25, 2025, 3:46:26 PMFeb 25
to sage-release
On Tuesday, February 25, 2025 at 1:42:57 PM UTC-6 emanuel.c  wrote:
Maybe Mac users could consider the current solution used by Windows users : install a virtual machine using some "Real Unix" distribution, and install Sage there. It's supposed to be liveable on Windows...

"Livable" is an extremely low bar, especially compared to the current situation for macOS users, which is that they can easily install the latest release of Sage in a familiar way (drag the app into the Applications forlder) or by running the command "brew install sage" in a terminal, if they have Homebrew.

You are proposing to "improve" their situation by forcing them to install a virtual computer and then forcing them to install linux in the virtual computer and then forcing them to learn their way around linux so that they can install an extremely out of date version of Sage (e.g. 9.5 on Ubuntu 22.04) or use a "bleeding edge" version of linux.

- Marc

PS Declaring "I would't touch Mac OS in a class A aseptic room..." is not likely to make many macOS users interested in your advice.

Emmanuel Charpentier

unread,
Feb 25, 2025, 4:12:58 PMFeb 25
to sage-release
Le mardi 25 février 2025 à 21:46:26 UTC+1, marc....@gmail.com a écrit :
On Tuesday, February 25, 2025 at 1:42:57 PM UTC-6 emanuel.c  wrote:
Maybe Mac users could consider the current solution used by Windows users : install a virtual machine using some "Real Unix" distribution, and install Sage there. It's supposed to be liveable on Windows...

"Livable" is an extremely low bar,

Indeed.
 
especially compared to the current situation for macOS users, which is that they can easily install the latest release of Sage in a familiar way (drag the app into the Applications forlder)

Ah ? Where do all those "I can't install Sage on my Mac ! Help me !" messages come from ?
 
or by running the command "brew install sage" in a terminal, if they have Homebrew.

You are proposing to "improve" their situation by forcing them to install a virtual computer and then forcing them to install linux in the virtual computer and then forcing them to learn their way around linux

Isn't Mac OS supposed to be Unix-based ? Where is the Unix "experience" ?
 
so that they can install an extremely out of date version of Sage (e.g. 9.5 on Ubuntu 22.04) or use a "bleeding edge" version of linux.

Or install from source on a stable version of Linux. Which seems easier than copiung with the zillion (combinatorial explosion you know...) variations opened by the various uses of Homebrew...
 

- Marc

PS Declaring "I would't touch Mac OS in a class A aseptic room..." is not likely to make many macOS users interested in your advice.

Indeed.

I have been on the receiving end of Mac users "needing help"...

david....@gmail.com

unread,
Feb 25, 2025, 4:22:00 PMFeb 25
to sage-release


MAC-04017247:sage dcoudert$ otool -TV /opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.dylib 

/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.dylib:

Table of contents (0 entries)

module name      symbol name

MAC-04017247:sage dcoudert$ otool -TV /opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a | grep dgeqrf

/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(dgeqrf.o):

/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(dgeqrfp.o):

/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(lapacke_dgeqrf.o):

/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(lapacke_dgeqrf_work.o):

/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(lapacke_dgeqrfp.o):

/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(lapacke_dgeqrfp_work.o):


and yes, I'm trying with https://github.com/sagemath/sage/pull/39571

G. M.-S.

unread,
Feb 25, 2025, 4:34:43 PMFeb 25
to sage-r...@googlegroups.com

FWIW, macOS users* asking for help have been very happy to learn there was a very easy to install app, thanks to Marc Culler.

Guillermo

* At least some of them.

Dima Pasechnik

unread,
Feb 25, 2025, 5:08:10 PMFeb 25
to sage-r...@googlegroups.com


On 25 February 2025 15:21:59 GMT-06:00, "david....@gmail.com" <david....@gmail.com> wrote:
>
>
>
>MAC-04017247:sage dcoudert$ otool -TV
>/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.dylib
>
>/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.dylib:
>
>Table of contents (0 entries)
>
>module name symbol name
>
>MAC-04017247:sage dcoudert$ otool -TV
>/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a | grep dgeqrf
>
>/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(dgeqrf.o):
>
>/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(dgeqrfp.o):
>
>/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(lapacke_dgeqrf.o):
>
>/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(lapacke_dgeqrf_work.o):
>
>/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(lapacke_dgeqrfp.o):
>
>/opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.a(lapacke_dgeqrfp_work.o):


you need to try with a tool showing the symbols in dylib as they are seen by the linker.

Try something like


nm /opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.dylib | grep -i dgeqrfp
>> https://groups.google.com/d/msgid/sage-release/c631ea8b-7c97-433f-9aa6-bf39686332b7n%40googlegroups.com
>> .
>>
>

david....@gmail.com

unread,
Feb 25, 2025, 5:09:37 PMFeb 25
to sage-release

MAC-04017247:sage dcoudert$ nm /opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.dylib | grep -i dgeqrfp

0000000000d84dbc T _LAPACKE_dgeqrfp

0000000000d84eec T _LAPACKE_dgeqrfp_work

00000000008f4120 T _dgeqrfp_

Marc Culler

unread,
Feb 25, 2025, 5:11:21 PMFeb 25
to sage-release
The symbol which is reported as missing from openblas 0.3.29 (dgeqrf_) is defined in openblas 0.3.28 (which is the version built by the Sage openblas spkg).
% nm local/lib/libopenblas.dylib | grep dgeqrf
00000000007fcb64 T _LAPACKE_dgeqrf
00000000007fcca0 T _LAPACKE_dgeqrf_work
00000000007fce58 T _LAPACKE_dgeqrfp
00000000007fcf94 T _LAPACKE_dgeqrfp_work
0000000000364c60 T _dgeqrf_
00000000003651a0 T _dgeqrfp_

If you run that nm command on the Homebrew version of libopenblas.dylib it will probably not show that symbol.

The configure script author seemed to think that dgeqrf_ is a good symbol to check for when deciding whether an openblas library is acceptable.  But that symbol was apparently removed from 0.3.29.  So maybe that was just a bad choice and the script should be checking for something else instead.

- Marc

Marc Culler

unread,
Feb 25, 2025, 5:21:08 PMFeb 25
to sage-release
On Tuesday, February 25, 2025 at 3:12:58 PM UTC-6 emanuel.c wrote:

Ah ? Where do all those "I can't install Sage on my Mac ! Help me !" messages come from ?

They come from people who are trying to build Sage from source, not from people installing the binary package.

- Marc 

Kwankyu Lee

unread,
Feb 25, 2025, 6:09:21 PMFeb 25
to sage-release
In my experience with the latest release, there was no problem in building sage from source both on intel and M4 chip, except the issues fixed by #39571.

Clearly there have been many efforts by many people to achieve this state. Many thanks for them.  

John H Palmieri

unread,
Feb 25, 2025, 6:11:53 PMFeb 25
to sage-release
Kwankyu, I'm curious: what version(s) of Python do you have on those machines, and where did they come from? Did Sage build its own Python package or did a system installation of Python get used?

Marc Culler

unread,
Feb 25, 2025, 6:15:21 PMFeb 25
to sage-r...@googlegroups.com
I had no trouble either, and I join you in acknowledging everyone's hard work. But I guess this thread would not exist if everyone were having the same experience as you and I.

- Marc



--
You received this message because you are subscribed to a topic in the Google Groups "sage-release" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/sage-release/8u71odPIXD8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to sage-release...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/sage-release/e9346521-527c-4531-9e6d-da93383fabd1n%40googlegroups.com.

John H Palmieri

unread,
Feb 25, 2025, 6:26:07 PMFeb 25
to sage-release
On Tuesday, February 25, 2025 at 10:10:47 AM UTC-8 Dima Pasechnik wrote:
On Tue, Feb 25, 2025 at 11:16 AM John H Palmieri <jhpalm...@gmail.com> wrote:
>
> Maybe this is naive, but if you're testing a change from the old situation, where Python 3.13 was not allowed, to now allowing it, I might imagine that you would test it on standard supported platforms, like OS X with Python 3.13 installed via homebrew. We should back out the change until it's implemented correctly.

There is always a Mac out there on which for some reason Sage doesn't
install, actually, it always was like this.

Shouldn't we expect an expert user like you, who noticed an issue to
actively debug it and possibly fix, rather than wait for someone to
fix it?
As I said, there is a workaround to avoid this issue, but you complain
that this workaround is not what "is expected", 

If installation without "--enable-system-site-packages" was working with the previous beta release, I think it's completely appropriate to complain if the same procedure is not working now. That's the point of these beta releases: to test changes and make sure they work, or conversely to point out when they don't.
 
demand rolling
something back, while not telling why it doesn't work for you without
it.

Maybe it's a problem on your computer only.

At least one other person reported problems building cffi too, so I don't think it's just me. I see the same thing on a second OS X machine, by the way.
 
The less we rely on flaky vendored packages, the less likely breakages
occur. As the number of packages we vendor approaches 500, it's a
Herculean task to make sure they all work. That's why I keep saying
Homebrew to Mac users.

Yes, and homebrew's Python 3.13 is what is not working for me.

Kwankyu Lee

unread,
Feb 25, 2025, 8:29:24 PMFeb 25
to sage-release
On Wednesday, February 26, 2025 at 8:11:53 AM UTC+9 John H Palmieri wrote:
Kwankyu, I'm curious: what version(s) of Python do you have on those machines, and where did they come from? Did Sage build its own Python package or did a system installation of Python get used?

-----------------------------------------------------------------------------
Checking whether SageMath should install SPKG python3...
checking whether any of bzip2 liblzma libffi zlib is installed as or will be installed as SPKG... no
checking for python3 >= 3.11.0, < 3.14.0 with modules sqlite3, ctypes, math, hashlib, socket, zlib, ssl, ensurepip and setuptools/distutils...
checking ... whether /opt/homebrew/bin/python3 is good... yes
checking for python3 >= 3.11.0, < 3.14.0 with modules sqlite3, ctypes, math, hashlib, socket, zlib, ssl, ensurepip... /opt/homebrew/bin/python3
configure: will use system package and not install SPKG python3
checking whether /opt/homebrew/bin/python3 is configured to build multiarch extensions... no
checking whether "-march=native" works with the C/C++ compilers configured for building extensions for /opt/homebrew/bin/python3... yes
-----------------------------------------------------------------------------
...
python3:                        using system package; SPKG will not be installed
...

$ /opt/homebrew/bin/python3 --version

Python 3.13.2

on my M4 machine. 

The intel machine is not available at this moment.

Kwankyu Lee

unread,
Feb 25, 2025, 9:00:19 PMFeb 25
to sage-release
On Tuesday, February 25, 2025 at 8:44:02 AM UTC+9 John H Palmieri wrote:
On OS X 15.3.1 with many homebrew packages installed, including both Python 3.12 and Python 3.13:

- if I use Python 3.13, `pillow` and `cffi` fail to build. (I used "./configure", and I also tried after applying the patch from #39570)

I built on the PR branch of #39571, not #39570

The latest release, without #39571, seems to have a trouble with python 3.13, not only on macOS but also on fedora 41:


Side note: CI Linux is also in danger due to https://github.com/sagemath/sage/pull/39467. Please give attention

Dima Pasechnik

unread,
Feb 25, 2025, 9:12:24 PMFeb 25
to sage-r...@googlegroups.com
On Tue, Feb 25, 2025 at 8:00 PM Kwankyu Lee <ekwa...@gmail.com> wrote:
>
>
>
> On Tuesday, February 25, 2025 at 8:44:02 AM UTC+9 John H Palmieri wrote:
>
> On OS X 15.3.1 with many homebrew packages installed, including both Python 3.12 and Python 3.13:
>
> - if I use Python 3.13, `pillow` and `cffi` fail to build. (I used "./configure", and I also tried after applying the patch from #39570)
>
>
> I built on the PR branch of #39571, not #39570

you need both of these to fix the latest beta. Both, not a random one
of the two.

>
> The latest release, without #39571, seems to have a trouble with python 3.13, not only on macOS but also on fedora 41:
>
> https://github.com/kwankyu/sage/actions/runs/13467567390/job/37636363309
>
> Side note: CI Linux is also in danger due to https://github.com/sagemath/sage/pull/39467. Please give attention
>
> --
> 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/0b4fb5c4-cce2-48c1-b58f-1e757dbb97cfn%40googlegroups.com.

Dima Pasechnik

unread,
Feb 25, 2025, 9:16:14 PMFeb 25
to sage-r...@googlegroups.com
Please also review https://github.com/sagemath/sage/pull/39492 - yes,
I am talking to macOS Sage users here.
https://github.com/sagemath/sage/pull/39492 fixes a macOS-specific
issue, but no macOS user has been willing to review it!

Emmanuel Charpentier

unread,
Feb 26, 2025, 1:16:43 AMFeb 26
to sage-release

Done : issue #39591 opened.

Le mardi 25 février 2025 à 17:21:32 UTC+1, Emmanuel Charpentier a écrit :
This release seems to have broken "our" exception report system. Any error raises a second error for its report. As an example, ask for the sum of two undefined variables :

```
sage: truc+machin
Unexpected exception formatting exception. Falling back to standard exception

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/IPython/core/interactiveshell.py", line 3577, in run_code
    exec(code_obj, self.user_global_ns, self.user_ns)
    ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<ipython-input-188-a6f685eae0e2>", line 1, in <module>
    truc+machin
    ^^^^
NameError: name 'truc' is not defined
```

This is the expected error message. But :

```
During handling of the above exception, another exception occurred:


Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/IPython/core/interactiveshell.py", line 2168, in showtraceback
    stb = self.InteractiveTB.structured_traceback(
        etype, value, tb, tb_offset=tb_offset
    )
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1457, in structured_traceback
    return FormattedTB.structured_traceback(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        self, etype, evalue, etb, tb_offset, number_of_lines_of_context
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1348, in structured_traceback
    return VerboseTB.structured_traceback(
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        self, etype, value, tb, tb_offset, number_of_lines_of_context
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1195, in structured_traceback
    formatted_exception = self.format_exception_as_a_whole(etype, evalue, etb, number_of_lines_of_context,
                                                           tb_offset)
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1085, in format_exception_as_a_whole
    self.get_records(etb, number_of_lines_of_context, tb_offset) if etb else []
    ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/IPython/core/ultratb.py", line 1182, in get_records
    res = list(stack_data.FrameInfo.stack_data(etb, options=options))[tb_offset:]
          ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/stack_data/core.py", line 597, in stack_data
    yield from collapse_repeated(
    ...<4 lines>...
    )
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/stack_data/utils.py", line 83, in collapse_repeated
    yield from map(mapper, original_group)
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/stack_data/core.py", line 587, in mapper
    return cls(f, options)
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/stack_data/core.py", line 551, in __init__
    self.executing = Source.executing(frame_or_tb)
                     ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/executing/executing.py", line 283, in executing
    assert_(new_stmts <= stmts)
    ~~~~~~~^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/executing/executing.py", line 80, in assert_
    raise AssertionError(str(message))
AssertionError
```

This is understandable only by the developer's of this part of Sage's error handling. Which I am*not*.

This problem deserves an issue (probably critical, *i. e.* deserving a solution before the vext release). Advice for creating this issue ?

HTH,

Emmanuel Charpentier

unread,
Feb 26, 2025, 8:10:56 AMFeb 26
to sage-release

On Ubuntu 24.04 running under WSL2/Windows11 on core i7 + 32 GB RAM, the upgrade of 10.6.beta5 to 10.6.beta7 is uneventful. ptestlong gives the following results :

sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/libs/gap/element.pyx # Killed due to segmentation fault.

Permanent. Already reported. Last successful test :

sage: for i in range(100): rnd = [ randint(-10,10) for i in range(randint(0,7)) ] # compute the sum in GAP _ = libgap.Sum(rnd) try: libgap.Sum(*rnd) print('This should have triggered a ValueError') print('because Sum needs a list as argument') except ValueError: pass ## line 2483 ## sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/rings/integer.pyx # 1 doctest failed

Permanent. Failure :

File "src/sage/rings/integer.pyx", line 7118, in sage.rings.integer.Integer.binomial Failed example: for i in [1..10]: # long time (5s) # needs sage.libs.pari with ensure_interruptible_after(i/11): (2^100).binomial(2^22, algorithm='pari') Exception raised: cysignals.signals.AlarmInterrupt During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/forker.py", line 728, in _run self.compile_and_execute(example, compiler, test.globs) File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/forker.py", line 1152, in compile_and_execute exec(compiled, globs) File "<doctest sage.rings.integer.Integer.binomial[15]>", line 2, in <module> with ensure_interruptible_after(i/Integer(11)): File "/usr/lib/python3.12/contextlib.py", line 158, in __exit__ self.gen.throw(value) File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/util.py", line 894, in ensure_interruptible_after raise RuntimeError( RuntimeError: Function is not interruptible within 0.2727 seconds, only after 5.6641 seconds ********************************************************************** sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/rings/qqbar.py # 1 doctest failed

Transient.

sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/doctest/forker.py # 5 doctests failed

Transient

sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/matrix/matrix_integer_dense.pyx # 1 doctest failed

Permanent. Failure :

File "src/sage/matrix/matrix_integer_dense.pyx", line 4389, in sage.matrix.matrix_integer_dense.Matrix_integer_dense._solve_iml Failed example: with ensure_interruptible_after(2, max_wait_after_interrupt=8): A._solve_iml(B) Exception raised: cysignals.signals.AlarmInterrupt During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/forker.py", line 728, in _run self.compile_and_execute(example, compiler, test.globs) File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/forker.py", line 1152, in compile_and_execute exec(compiled, globs) File "<doctest sage.matrix.matrix_integer_dense.Matrix_integer_dense._solve_iml[19]>", line 1, in <module> with ensure_interruptible_after(Integer(2), max_wait_after_interrupt=Integer(8)): A._solve_iml(B) File "/usr/lib/python3.12/contextlib.py", line 158, in __exit__ self.gen.throw(value) File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/util.py", line 900, in ensure_interruptible_after raise RuntimeError(f"Interrupted too early: {elapsed:.4f} < {seconds:.4f}, this should not happen") RuntimeError: Interrupted too early: -5.2366 < 2.0000, this should not happen ********************************************************************** sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/doc/en/developer/coding_basics.rst # 1 doctest failed

Transient.

sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/rings/polynomial/polynomial_zmod_flint.pyx # 1 doctest failed

Transient.

sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/doctest/control.py # 7 doctests failed

Transient.

sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/schemes/elliptic_curves/descent_two_isogeny.pyx # 1 doctest failed

Transient.

sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/rings/real_mpfr.pyx # 1 doctest failed

Permanent. Archi-multi-reported.

sage -t --long --warn-long 30.0 --random-seed=216726477933468160153103774510788998532 src/sage/doctest/util.py # 4 doctests failed

Permanent. (Cosmetic ?) failures :

********************************************************************** File "src/sage/doctest/util.py", line 810, in sage.doctest.util.inaccuracy_tolerance Failed example: with ensure_interruptible_after(2) as data: sleep(1) Expected: Traceback (most recent call last): ... RuntimeError: Function terminates early after 1... < 2.0000 seconds Got: <BLANKLINE> Traceback (most recent call last): File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/forker.py", line 728, in _run self.compile_and_execute(example, compiler, test.globs) File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/forker.py", line 1152, in compile_and_execute exec(compiled, globs) File "<doctest sage.doctest.util.inaccuracy_tolerance[6]>", line 1, in <module> with ensure_interruptible_after(Integer(2)) as data: sleep(Integer(1)) File "/usr/lib/python3.12/contextlib.py", line 144, in __exit__ next(self.gen) File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/util.py", line 902, in ensure_interruptible_after raise RuntimeError(f"Function terminates early after {elapsed:.4f} < {seconds:.4f} seconds") RuntimeError: Function terminates early after 0.9616 < 2.0000 seconds ********************************************************************** File "src/sage/doctest/util.py", line 856, in sage.doctest.util.inaccuracy_tolerance Failed example: with ensure_interruptible_after(1): uninterruptible_sleep(2r); raise RuntimeError Expected: Traceback (most recent call last): ... RuntimeError: Function is not interruptible within 1.0000 seconds, only after 2.00... seconds Got: <BLANKLINE> Traceback (most recent call last): File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/forker.py", line 728, in _run self.compile_and_execute(example, compiler, test.globs) File "/usr/local/sage-10/local/var/lib/sage/venv-python3.12/lib/python3.12/site-packages/sage/doctest/forker.py", line 1152, in compile_and_execute exec(compiled, globs) File "<doctest sage.doctest.util.inaccuracy_tolerance[12]>", line 1, in <module> with ensure_interruptible_after(Integer(1)): uninterruptible_sleep(2); raise RuntimeError ^^^^^^^^^^^^^^^^^^ RuntimeError **********************************************************************

HTH,

david....@gmail.com

unread,
Feb 26, 2025, 8:45:36 AMFeb 26
to sage-release
indeed, I get

MAC-04017247:sage dcoudert$ nm /opt/homebrew/Cellar/openblas/0.3.29/lib/libopenblas.dylib | grep  dgeqrfp

0000000000d84dbc T _LAPACKE_dgeqrfp

0000000000d84eec T _LAPACKE_dgeqrfp_work

00000000008f4120 T _dgeqrfp_


david....@gmail.com

unread,
Feb 26, 2025, 9:07:36 AMFeb 26
to sage-release
I tried again (in a fresh shell, after make distclean, ./bootstrap, source .homebrew_build_env) with 
and since it fails to compile ipykernel, I tried in addition:
./configure --enable-system-site-packages --disable-notebook

It's still trying to build ipykernel, and it fails to compile it with

[ipykernel-6.27.1] [spkg-install] ModuleNotFoundError: No module named 'jupyter_core'


Not a lucky trial.

A side question:
looking at ./configure --help, I saw option --enable-modular_decomposition. which concerns an experimental package that we don't use anymore (it was buggy).
If I want to make it disappear, is it sufficient to remove directory build/pkgs/modular_decomposition ?

Thanks,
David.

david....@gmail.com

unread,
Feb 26, 2025, 11:16:00 AMFeb 26
to sage-release
The good news of the day : I can successfully compile with https://github.com/sagemath/sage/pull/39571  and  ./configure --with-python=`which python3.12`
David.

Marc Culler

unread,
Feb 26, 2025, 11:44:08 AMFeb 26
to sage-release
The code that is rejecting openblas 0.3.29 appears to be in build/pkgs/openblas/spkgconfigure.m4.

That file includes tests for the existence of the symbol dgeqrf_ for the purpose of deciding whether a version of openblas also provides lapack.  According to github blame, that seems to have been Dima's idea 5 or 6 years ago.  Given that LAPACK appears so many times when searching for dgeqfr in the output of nm, I would guess that version 0.3.29 does in fact provide lapack.  But the tests in that m4 file need to be revised.

- Marc

Dima Pasechnik

unread,
Feb 26, 2025, 12:14:35 PMFeb 26
to sage-r...@googlegroups.com
On Wed, Feb 26, 2025 at 10:44 AM Marc Culler <marc....@gmail.com> wrote:
>
> The code that is rejecting openblas 0.3.29 appears to be in build/pkgs/openblas/spkgconfigure.m4.
>
> That file includes tests for the existence of the symbol dgeqrf_ for the purpose of deciding whether a version of openblas also provides lapack. According to github blame, that seems to have been Dima's idea 5 or 6 years ago. Given that LAPACK appears so many times when searching for dgeqfr in the output of nm, I would guess that version 0.3.29 does in fact provide lapack. But the tests in that m4 file need to be revised.

yes, right, that's exactly what I'm doing now. However, the test is
very tricky and complicated, as
a standard way to check that a Fortran function is available is to call Fortran
(something what autoconf macro AC_FC_FUNC would do)
Instead, the test is done with C++, is much more complicated, and
fails on macOS arm64 for reasons
not yet known to me.

I'm trying to see if at least AC_FC_FUNC can do the job, in the
presence of gfortran...

Dima
> To view this discussion visit https://groups.google.com/d/msgid/sage-release/93906b68-a7ce-40eb-a879-b2978dee1fb0n%40googlegroups.com.

Marc Culler

unread,
Feb 26, 2025, 12:27:05 PMFeb 26
to sage-r...@googlegroups.com
What about just checking the return status of nm piped to grep, as we were just doing?  (Once you know which function you need to look for).

- Marc

You received this message because you are subscribed to a topic in the Google Groups "sage-release" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/sage-release/8u71odPIXD8/unsubscribe.
To unsubscribe from this group and all its topics, send an email to sage-release...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/sage-release/CAAWYfq2MxfW1_XoqtKCdv7Vnp0m4jVAdC68pTwCxAN9WvbN0-w%40mail.gmail.com.

Dima Pasechnik

unread,
Feb 26, 2025, 2:26:38 PMFeb 26
to sage-r...@googlegroups.com
On Wed, Feb 26, 2025 at 11:27 AM Marc Culler <marc....@gmail.com> wrote:
>
> What about just checking the return status of nm piped to grep, as we were just doing? (Once you know which function you need to look for).

the function name is correct, the mangled name is dgeqrf_, as reported
by AC_FC_FUNC,
with this value, AC_CHECK_FUNC passes.

However, I found something that looks like an upstream (Homebrew?)
error: "-fopenmp" is pushed into CFLAGS
from the pkg-config, but this causes C compilations (with clang) fail,
as Apple clang does not support openmp,
as far as I can tell (and Sage's tests on gcc agree with me here).

It's probably due to Homebrew using a compiler which can ignore such
an unknown option.

% pkg-config -cflags openblas
-I/opt/homebrew/Cellar/openblas/0.3.29/include -fopenmp

Note that without OpenMP openblas is much, much less performant than with it.
According to the great R project: https://mac.r-project.org/openmp/,
on XCode clang openmp is supported with
-Xclang -fopenmp
and one also needs an openmp dylib - which Apple doesn't ship (thanks
Apple, as usual - of course they want us to use their propriatory
stuff),
but it is available from R project at the URL above, or from
https://formulae.brew.sh/formula/libomp

I have yet to try the latter. Probably the flags in openblas.pc still
need to be corrected.

Dima
> To view this discussion visit https://groups.google.com/d/msgid/sage-release/CALcZXRGRoDSP7DoU8p%3DhyBVxTTHAnB%3DpQzVsjK6hp26mp%2BHz2g%40mail.gmail.com.

John H Palmieri

unread,
Feb 26, 2025, 3:45:59 PMFeb 26
to sage-release
On Tuesday, February 25, 2025 at 6:12:24 PM UTC-8 Dima Pasechnik wrote:
On Tue, Feb 25, 2025 at 8:00 PM Kwankyu Lee <ekwa...@gmail.com> wrote:
>
>
>
> On Tuesday, February 25, 2025 at 8:44:02 AM UTC+9 John H Palmieri wrote:
>
> On OS X 15.3.1 with many homebrew packages installed, including both Python 3.12 and Python 3.13:
>
> - if I use Python 3.13, `pillow` and `cffi` fail to build. (I used "./configure", and I also tried after applying the patch from #39570)
>
>
> I built on the PR branch of #39571, not #39570

you need both of these to fix the latest beta. Both, not a random one
of the two.


With these, I can build Sage without jumping through any other hoops, just using `./configure`. I get three new doctest failures (perhaps related to #39591??):

sage -t --long --warn-long 30.0 --random-seed=266591211446680205638834841842271765705 src/sage/repl/ipython_extension.py  # 1 doctest failed
sage -t --long --warn-long 30.0 --random-seed=266591211446680205638834841842271765705 src/sage/rings/integer.pyx  # 1 doctest failed
sage -t --long --warn-long 30.0 --random-seed=266591211446680205638834841842271765705 src/sage/interfaces/expect.py  # 1 doctest failed

Dima Pasechnik

unread,
Feb 26, 2025, 10:52:05 PMFeb 26
to sage-r...@googlegroups.com
I have filed https://github.com/Homebrew/homebrew-core/issues/209091
to report incorrect CFLAGS in openblas.pc

Here is a patch for build/pkgs/openblas/spkg-configure.m4 I came up with:

--- a/build/pkgs/openblas/spkg-configure.m4
+++ b/build/pkgs/openblas/spkg-configure.m4
@@ -23,12 +23,11 @@ SAGE_SPKG_CONFIGURE([openblas], [dnl CHECK
])
dnl Check all name manglings that AC_FC_FUNC could check based on the
dnl characteristics of the Fortran compiler
- m4_foreach([dgeqrf_mangled], [dgeqrf, dgeqrf_, DGEQRF, DGEQRF_], [dnl
- AC_CHECK_FUNC(dgeqrf_mangled, [dnl
- AS_VAR_SET([HAVE_DGEQRF], [yes])
- ])
- ])
- AS_IF([test x$HAVE_DGEQRF = xyes], [dnl openblas works as lapack
+
+ AC_MSG_CHECKING([for the mangled name for dgeqrf])
+ AC_FC_FUNC([dgeqrf])
+ AC_MSG_RESULT($dgeqrf)
+ AC_CHECK_FUNC($dgeqrf, [dnl openblas works as lapack
sage_install_lapack_pc=yes
], [dnl openblas does not work as lapack; try to use system
lapack as is
PKG_CHECK_MODULES([LAPACK], [lapack], [],
[sage_spkg_install_openblas=yes])

But it won't work on Homebrew, without fixing openblas.pc

I've tried adding the correct -Xclang prefix to -fopenmp in openblas.pc,
but it led to trouble building fflas_ffpack.

Then I just removed -fopenmp from openblas.pc, and everything builds
(with openblas from Homebrew)

I'll report test results...

Dima

Dima Pasechnik

unread,
Feb 27, 2025, 12:38:39 AMFeb 27
to sage-r...@googlegroups.com
It works great, with Homebrew openblas just 3 failed tests, not
related to openblas.
Actually, the patch of spkg-configure.m4 above is not needed, it was
merely the broken openblas.pc that caused the issue.
(although with the patch ./configure is less chatty, and probably a
tiny bit faster)

By the way, there is now a Homebrew fricas, which I tested along the
way, it all works nicely.
Please review a trivial PR adding the corresponding record:
https://github.com/sagemath/sage/pull/39595

Dima

Thierry Dumont

unread,
Feb 27, 2025, 1:28:25 AMFeb 27
to sage-r...@googlegroups.com
Starting from a fresh clone, on Debian testing AMD 64, with:

./configure --enable-system-site-packages

- The cffi problem diseapears,

- The giac problem persists (with debian giac installed or not).

I'm a bit lost :-(

r.


Le 23/02/2025 à 21:09, Dima Pasechnik a écrit :
> ./configure --enable-system-site-packages

Emmanuel Charpentier

unread,
Feb 27, 2025, 5:43:58 AMFeb 27
to sage-release
FWIW : installing from source on a brand new machine, m̀ake`failed to download Pillow source, which I managed to find at http://ftp.riken.jp/sagemath/spkg/upstream/pillow/index.html.

ISTR to have seen a message annoncing a change of name for Pillow (which becomes `pillow`), but, for dear life, my senescent neurons are unable to remember more.

Should I file an issue ?

Le samedi 22 février 2025 à 00:40:17 UTC+1, Volker Braun a écrit :

Dima Pasechnik

unread,
Feb 27, 2025, 5:58:03 AMFeb 27
to sage-r...@googlegroups.com
there is already a positivly reviewed PR bumping pillow to the new version, where it's no longer Pillow, just pillow

Emmanuel Charpentier

unread,
Feb 27, 2025, 6:04:00 AMFeb 27
to sage-release
That was futile : this file won't compile. As requested in the error message, `config.log`and `pillow-1.10.1.0.log`have been sent to sage-devel.

Ideas ?

Emmanuel Charpentier

unread,
Feb 27, 2025, 6:05:20 AMFeb 27
to sage-release
Do you remember which PR : A search in the issues on "Pillow" doesn't return anything relevant.

Emmanuel Charpentier

unread,
Feb 27, 2025, 6:08:35 AMFeb 27
to sage-release

Dima Pasechnik

unread,
Feb 27, 2025, 6:34:33 AMFeb 27
to sage-r...@googlegroups.com


On 27 February 2025 05:05:20 GMT-06:00, Emmanuel Charpentier <emanuel.c...@gmail.com> wrote:
>Do you remember which PR : A search in the issues on "Pillow" doesn't
>return anything relevant.

issues are not PRs. Not many PRs have an associated with them issues.

emanuel.c...@gmail.com

unread,
Feb 27, 2025, 1:23:18 PMFeb 27
to sage-r...@googlegroups.com
Again, trying to compile Sage from source on a brand new machine.

Worting on a branch including
https://github.com/sagemath/sage/pull/39571,
the compilations stops on an error I do not understand.

The relevant logs are enclosed.



sagelib-10.6.beta7.log
config.log

Isuru Fernando

unread,
Feb 27, 2025, 1:58:08 PMFeb 27
to sage-r...@googlegroups.com
> [spkg-install]     g++: warning: @SIMD_CFLAGS@: linker input file unused because linking not done
> [spkg-install]     g++: error: @SIMD_CFLAGS@: linker input file not found: No such file or directory

Your system m4ri is broken. See https://github.com/malb/m4ri/pull/18

Isuru



--
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.

Dima Pasechnik

unread,
Feb 27, 2025, 2:25:12 PMFeb 27
to sage-r...@googlegroups.com


On 27 February 2025 12:57:51 GMT-06:00, Isuru Fernando <isu...@gmail.com> wrote:
>> [spkg-install] g++: warning: @SIMD_CFLAGS@: linker input file unused
>because linking not done
>> [spkg-install] g++: error: @SIMD_CFLAGS@: linker input file not
>found: No such file or directory
>
>Your system m4ri is broken. See https://github.com/malb/m4ri/pull/18

you can actually fix this by hand, if your OS doesn't provide a fix yet.

just edit m4ri.pc file and put the correct value these, instead of this @...@, only I don't quite know which one.

Emmanuel Charpentier

unread,
Feb 27, 2025, 3:05:57 PMFeb 27
to sage-release

Le jeudi 27 février 2025 à 19:58:08 UTC+1, isu…@gmail.com a écrit :

> [spkg-install]     g++: warning: @SIMD_CFLAGS@: linker input file unused because linking not done
> [spkg-install]     g++: error: @SIMD_CFLAGS@: linker input file not found: No such file or directory

Your system m4ri is broken. See https://github.com/malb/m4ri/pull/18

Indeed.

I finally managed to complete a compilation with ./configure --enable-ccache --enable-system-packages --with-system-m4ri=no, on top of https://github.com/sagemath/sage/pull/39571.

ptestlongunderway.

Thank you very much !

Emmanuel Charpentier

unread,
Feb 28, 2025, 8:35:00 AMFeb 28
to sage-release

On Debian testing running on Ryzen 9 + 64 GB RAM, after including #39571 et #39602, but without enable-system-packages, ptestlong raises the following permanent failures :

sage -t --long --warn-long 30.0 --random-seed=179778203930738585590205830888280412035 src/sage/libs/gap/element.pyx # Killed due to segmentation fault

Killed. Last command executed :

sage: for i in range(100): rnd = [ randint(-10,10) for i in range(randint(0,7)) ] # compute the sum in GAP _ = libgap.Sum(rnd) try: libgap.Sum(*rnd) print('This should have triggered a ValueError') print('because Sum needs a list as argument') except ValueError: pass ## line 2483 ##

ISTR that this was already reported.

sage -t --long --warn-long 30.0 --random-seed=179778203930738585590205830888280412035 src/sage/rings/integer.pyx # 1 doctest failed

One error :

ile "src/sage/rings/integer.pyx", line 3074, in sage.rings.integer.Integer.divisors Failed example: for i in range(20): # long time # needs sage.libs.pari try: alarm(RDF.random_element(1e-3, 0.5)) _ = n.divisors() cancel_alarm() # we never get here except AlarmInterrupt: pass Expected nothing Got: Traceback (most recent call last): File "<frozen importlib._bootstrap>", line 653, in has_location File "src/cysignals/signals.pyx", line 341, in cysignals.signals.python_check_interrupt cysignals.signals.AlarmInterrupt Exception ignored in: 'cysignals.signals.verify_exc_value' Traceback (most recent call last): File "<frozen importlib._bootstrap>", line 653, in has_location File "src/cysignals/signals.pyx", line 341, in cysignals.signals.python_check_interrupt cysignals.signals.AlarmInterrupt:

The same repeated (about) 20 times.

sage -t --long --warn-long 30.0 --random-seed=179778203930738585590205830888280412035 src/sage/coding/linear_code.py # 4 doctests failed

Four failures to find /usr/local/sage-10/local/lib/gap/pkg/guava//bin/wtdist, which seems to be /usr/local/sage-10/local/lib/gap/pkg/guava/bin/x86_64-pc-linux-gnu-default64-kv9/wtdist

sage -t --long --warn-long 30.0 --random-seed=179778203930738585590205830888280412035 src/sage/rings/real_mpfr.pyx # 1 doctest failed

Error in fricas(R(pi)) due to an unexpected warning.

sage -t --long --warn-long 30.0 --random-seed=179778203930738585590205830888280412035 src/sage/rings/polynomial/plural.pyx # SignalError in doctesting framework

Failed example :

sage: H = A.g_algebra({y*x:x*y-z, z*x:x*z+2*x, z*y:y*z-2*y}) ## line 157 ## ********************************************************************** Traceback (most recent call last): File "sage/structure/parent.pyx", line 895, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:12654) mor = <map.Map> self._convert_from_hash.get(R) File "sage/structure/coerce_dict.pyx", line 650, in sage.structure.coerce_dict.MonoDict.get (build/cythonized/sage/structure/coerce_dict.c:6647) raise KeyError(k) KeyError: Free Algebra on 3 generators (x, y, z) over Rational Field During handling of the above exception, another exception occurred: Traceback (most recent call last): File "sage/structure/parent.pyx", line 2501, in sage.structure.parent.Parent._internal_convert_map_from (build/cythonized/sage/structure/parent.c:25040) return self._convert_from_hash.get(S) File "sage/structure/coerce_dict.pyx", line 650, in sage.structure.coerce_dict.MonoDict.get (build/cythonized/sage/structure/coerce_dict.c:6647) raise KeyError(k) KeyError: Free Algebra on 3 generators (x, y, z) over Rational Field During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/sage/doctest/forker.py", line 2611, in __call__ doctests, extras = self._run(runner, options, results) ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/sage/doctest/forker.py", line 2659, in _run result = runner.run(test) File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/sage/doctest/forker.py", line 920, in run return self._run(test, compileflags, out) ~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/sage/doctest/forker.py", line 728, in _run self.compile_and_execute(example, compiler, test.globs) ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/sage/doctest/forker.py", line 1152, in compile_and_execute exec(compiled, globs) ~~~~^^^^^^^^^^^^^^^^^ File "<doctest sage.rings.polynomial.plural.G_AlgFactory[1]>", line 1, in <module> File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/sage/algebras/free_algebra.py", line 1018, in g_algebra dmat[v2_ind, v1_ind] = polynomial_ring(d_poly) ~~~~~~~~~~~~~~~^^^^^^^^ File "sage/structure/parent.pyx", line 897, in sage.structure.parent.Parent.__call__ (build/cythonized/sage/structure/parent.c:12700) mor = <map.Map> self._internal_convert_map_from(R) File "sage/structure/parent.pyx", line 2503, in sage.structure.parent.Parent._internal_convert_map_from (build/cythonized/sage/structure/parent.c:25082) mor = self.discover_convert_map_from(S) File "sage/structure/parent.pyx", line 2524, in sage.structure.parent.Parent.discover_convert_map_from (build/cythonized/sage/structure/parent.c:25443) mor = S._internal_coerce_map_from(self) File "sage/structure/parent.pyx", line 2146, in sage.structure.parent.Parent._internal_coerce_map_from (build/cythonized/sage/structure/parent.c:23607) cpdef _internal_coerce_map_from(self, S): File "sage/structure/parent.pyx", line 2238, in sage.structure.parent.Parent._internal_coerce_map_from (build/cythonized/sage/structure/parent.c:23153) mor = self.discover_coerce_map_from(S) File "sage/structure/parent.pyx", line 2383, in sage.structure.parent.Parent.discover_coerce_map_from (build/cythonized/sage/structure/parent.c:23746) user_provided_mor = self._coerce_map_from_(S) File "sage/modules/module.pyx", line 132, in sage.modules.module.Module._coerce_map_from_ (build/cythonized/sage/modules/module.c:3283) cpdef _coerce_map_from_(self, M): File "/usr/local/sage-10/local/var/lib/sage/venv-python3.13/lib/python3.13/site-packages/sage/algebras/free_algebra.py", line 771, in _coerce_map_from_ if isinstance(R, (FreeAlgebra_generic, FreeAlgebra_letterplace)): ~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "sage/misc/lazy_import.pyx", line 966, in sage.misc.lazy_import.LazyImport.__instancecheck__ (build/cythonized/sage/misc/lazy_import.c:10034) return isinstance(x, self.get_object()) File "sage/misc/lazy_import.pyx", line 224, in sage.misc.lazy_import.LazyImport.get_object (build/cythonized/sage/misc/lazy_import.c:4289) return self._get_object() File "sage/misc/lazy_import.pyx", line 259, in sage.misc.lazy_import.LazyImport._get_object (build/cythonized/sage/misc/lazy_import.c:4643) self._object = getattr(__import__(self._module, {}, {}, [self._name]), self._name) File "sage/algebras/letterplace/free_algebra_letterplace.pyx", line 1, in init sage.algebras.letterplace.free_algebra_letterplace (build/cythonized/sage/algebras/letterplace/free_algebra_letterplace.cpp:16415) ############################################################################### File "sage/algebras/letterplace/free_algebra_element_letterplace.pyx", line 25, in init sage.algebras.letterplace.free_algebra_element_letterplace (build/cythonized/sage/algebras/letterplace/free_algebra_element_letterplace.cpp:16448) lib("freegb.lib") File "sage/libs/singular/function.pyx", line 1805, in sage.libs.singular.function.lib (build/cythonized/sage/libs/singular/function.cpp:24895) sig_on() cysignals.signals.SignalError: Segmentation fault ---------------------------------------------------------------------- sage -t --long --warn-long 30.0 --random-seed=179778203930738585590205830888280412035 src/sage/rings/polynomial/plural.pyx # SignalError in doctesting framework ---------------------------------------------------------------------- sage -t --long --warn-long 30.0 --random-seed=179778203930738585590205830888280412035 src/sage/libs/giac/__init__.py # Timed out

This seems to be permanent : a manual rerun hasn’t completed after 10 minutes.

BTW, the anomaly I recently reported (error in the error reporting code) seems fixed :

sage: a+x --------------------------------------------------------------------------- NameError Traceback (most recent call last) Cell In[1], line 1 ----> 1 a+x NameError: name 'a' is not defined sage:

HTH,

Reply all
Reply to author
Forward
0 new messages