python-flint 0.8.0 released

19 views
Skip to first unread message

Oscar Benjamin

unread,
Aug 29, 2025, 1:03:00 PM (8 days ago) Aug 29
to sympy
Hi all,

I've just pushed a new release python-flint 0.8.0.

This release of python-flint supports FLINT 3.0-3.3 and CPython
3.11-3.14 and has PyPI wheels containing FLINT 3.3.1 for

- Windows x86-64
- MacOS x86-64 and arm64
- Linux (manylinux) x86-64 and arm64

To install these you can run:

pip install -U python-flint

The installation can be tested (only takes a few seconds) with:

python -m flint.test

There are no big changes and this is mostly a maintenance release.
There are some bug fixes, dependency updates and a few smaller new
features. The main reasons for pushing the release right now are that:

- CPython 3.14 is about to be released and a new release is the
easiest way to provide binaries for 3.14.
- GitHub Actions is about to retire MacOS x86-64 runners which are
used to build and test the wheels for older Macs.

Possibly in future releases there will not be any binaries provided
for MacOS x86-64 but at least python-flint 0.8.0 has binaries for
CPython 3.14. It might still be possible to set something up to cross
compile from MacOS arm64 runners. So far that is something that we
have not bothered to do for any other platform though so by default I
am going to say that if the runners are not there we won't build for
that platform. If anyone is enthusiastic about older Macs though and
wants to get that working then let me know.

Changelog:

0.8.0
-----

Contributors (0.8.0):

- Oscar Benjamin (OB)
- Robert Dougherty-Bliss (RDB)
- Rémy Oudompheng (RO)
- Agriya Khetarpal (AK)

Notes (0.8.0):

- This mostly a maintenance release with some bug fixes,
dependency updates and a few smaller features.
- Since GitHub Actions is retiring its MacOS x86-64 runners
python-flint 0.8.0 is likely the last release to provide
prebuilt wheels for MacOS x86-64 (MacOS arm64 remains
fully supported). It is likely that future versions will
still work fine on MacOS x86-64 but would require building
from source and will not be tested in python-flint's CI.
MacOS arm64 wheels will still be provided and tested.

Changes (0.8.0):

- [gh-302](https://github.com/flintlib/python-flint/pull/302),
[gh-283](https://github.com/flintlib/python-flint/pull/283),
[gh-284](https://github.com/flintlib/python-flint/pull/284),
Wheels now ship MPFR 4.2.2 and FLINT 3.3.1. Cython 3.1 is now
supported for building (and required for the freethreaded
build). Wheels are provided for CPython 3.14 and 3.14t
(free-threaded) and PyPy 3.11. (OB)
- [gh-310](https://github.com/flintlib/python-flint/pull/310),
Add `truncate`, `left_shift` and `right_shift` methods to
`fmpz_poly`, `fmpq_poly`, `nmod_poly`, `acb_poly`, `arb_poly`
to match other univariate polynomial types. (RO)
- [gh-287](https://github.com/flintlib/python-flint/pull/287),
[gh-293](https://github.com/flintlib/python-flint/pull/293),
[gh-305](https://github.com/flintlib/python-flint/pull/305),
[gh-307](https://github.com/flintlib/python-flint/pull/307),
[gh-309](https://github.com/flintlib/python-flint/pull/309),
Add type annotations for `fmpz`, `fmpq`, `nmod`, `fmpz_mod`,
`fq_default`, `fmpz_poly`, `fmpq_poly`, `nmod_poly`,
`fmpz_mod_poly`, `fq_default_poly`, `fmpz_mpoly`, `fmpq_mpoly`,
`nmod_mpoly`, `fmpz_mod_mpoly`, `fmpz_series` and `fmpq_series`
(about half of the codebase). (OB)
- [gh-300](https://github.com/flintlib/python-flint/pull/300),
Fix `arb.repr` which now returns a Python representation that
round trips. (OB)
- [gh-292](https://github.com/flintlib/python-flint/pull/292),
The `fmpq` constructor now accepts `fmpq` numerator and denominator
as input. (OB)
- [gh-289](https://github.com/flintlib/python-flint/pull/289),
Add `.prec` attribute to series types `fmpz_series`, `fmpq_series`,
`arb_series` and `acb_series`. (OB)
- [gh-285](https://github.com/flintlib/python-flint/pull/285),
Don't use deprecated meson build option. (AK)
- [gh-274](https://github.com/flintlib/python-flint/pull/274),
Add resultant methods to `fmpz_poly`, `fmpq_poly` and
`nmod_poly`. Now all univariate and polynomial types have the
resultant method except for `fq_default_poly`. (RDB)

--
Oscar
Reply all
Reply to author
Forward
0 new messages