18
18
Installation
19
19
------------
20
20
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 `
25
29
26
30
pip install python-flint
27
31
28
32
Alternatively python-flint can be installed using ` conda `
29
33
30
34
conda install -c conda-forge python-flint
31
35
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
-
35
36
Build from source
36
37
-----------------
37
38
@@ -118,7 +119,9 @@ To do
118
119
-------------------------------------
119
120
120
121
* 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]) ` .
122
125
* Vector or array types (maybe)
123
126
* Many convenience methods
124
127
* 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.
140
143
141
144
Compatible versions (note that 0.7.0 is not yet released):
142
145
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.
156
158
157
159
CHANGELOG
158
160
=========
0 commit comments