Skip to content

Commit d58efcb

Browse files
committed
Update README
1 parent 0ecbb7d commit d58efcb

File tree

1 file changed

+23
-21
lines changed

1 file changed

+23
-21
lines changed

README.md

+23-21
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,21 @@ Author: Fredrik Johansson <[email protected]>
1818
Installation
1919
------------
2020

21-
Currently python-flint supports CPython versions 3.10-3.13. For Windows
22-
(x86-64) or OSX (x86-64 or arm64) or Linux (x86-64 `manylinux_2_17`) there are
23-
CPython binary wheels for python-flint on PyPI. For these platforms
24-
python-flint can be installed simply with `pip`
21+
Currently python-flint supports CPython versions 3.11-3.13 and 3.13t
22+
(free-threaded) and provides binaries on PyPI for the following platforms:
23+
24+
- Windows (x86-64)
25+
- MacOS (x86-64, arm64)
26+
- Linux (manylinux: x86-64, aarch64)
27+
28+
For these platforms python-flint can be installed simply with `pip`
2529

2630
pip install python-flint
2731

2832
Alternatively python-flint can be installed using `conda`
2933

3034
conda install -c conda-forge python-flint
3135

32-
It is also possible to use python-flint with some PyPy versions. Binary wheels
33-
are not provided for this on PyPI but can be installed with conda.
34-
3536
Build from source
3637
-----------------
3738

@@ -118,7 +119,9 @@ To do
118119
-------------------------------------
119120

120121
* Write more tests and add missing docstrings
121-
* Wrap missing flint types: finite fields, p-adic numbers, rational functions
122+
* Wrap missing flint types: matrices over finite fields, p-adic numbers, rational functions
123+
* Build on the preliminary interface to FLINT's generic (gr) types.
124+
* Make a nicer interface like `ZZ(1)` etc rather than `fmpz_poly([1, 2])`.
122125
* Vector or array types (maybe)
123126
* Many convenience methods
124127
* Write generic implementations of functions missing for specific FLINT types
@@ -140,19 +143,18 @@ supports all versions of Flint `>=3.0` available at the time of release.
140143

141144
Compatible versions (note that 0.7.0 is not yet released):
142145

143-
| python-flint | Release date | CPython | FLINT | Cython |
144-
|--------------|---------------|-------------|------------|------------|
145-
| `0.7.0` | 16th Mar 2025 | `3.11-3.13` | `3.0-3.2` | `3.0` only |
146-
| `0.6.0` | 1st Feb 2024 | `3.9-3.12` | `3.0` only | `3.0` only |
147-
148-
As of python-flint 0.7.0, CPython 3.13 free-threaded builds are tested in CI
149-
but wheels are not provided on PyPI. There are no known issues related to using
150-
python-flint in a [PEP 703](https://peps.python.org/pep-0703/) free-threaded
151-
build but it is likely that mutating objects from multiple threads is not safe.
152-
153-
Binary wheels are not yet provided for Linux aarch64
154-
([gh-105](https://github.com/flintlib/python-flint/issues/105)) or for Windows
155-
on ARM but may be added when CI runners for Linux/Windows are available.
146+
| python-flint | Release date | CPython | FLINT | Cython |
147+
|--------------|---------------|-------------|------------|------------------|
148+
| `0.7.0` | 16th Mar 2025 | `3.11-3.13` | `3.0-3.2` | `3.0.11-3.1.0a1` |
149+
| `0.6.0` | 1st Feb 2024 | `3.9-3.12` | `3.0` only | `3.0` only |
150+
151+
As of python-flint 0.7.0, CPython 3.13 [PEP
152+
703](https://peps.python.org/pep-0703/) free-threaded (no-GIL) builds of
153+
python-flint are provided. In the the free-threaded build, mutating matrices or
154+
polynomials from multiple threads can lead to memory corruption. Provided
155+
matrices or polynomials are not mutated when shared across threads there are no
156+
known issues with the free-threaded build but these should be considered
157+
experimental.
156158

157159
CHANGELOG
158160
=========

0 commit comments

Comments
 (0)