@@ -36,11 +36,9 @@ Build from source
3636-----------------
3737
3838For other platforms or architectures installation needs to build from source.
39- First install FLINT 3.0.0. Note that as of python-flint 0.5.0 only this * exact*
40- version of FLINT will work. In future it is hoped that the version requirement
41- for python-flint will be FLINT >= 3.0.0 but at the time of writing 3.0.0 is the
42- newest version of FLINT that has only been released recently and is the only
43- version that is supported by python-flint.
39+ First install FLINT 3. Starting with python-flint 0.5.0 older versions of Flint
40+ such as 2.9 are not supported any more. Note that as of Flint 3 Arb no longer
41+ needs to be built separately as it is now merged into Flint.
4442
4543See here for instructions on building FLINT:
4644
@@ -128,58 +126,97 @@ To do
128126CHANGELOG
129127-------------
130128
129+ 0.6.0
130+
131+ - [ gh-112 ] ( https://github.com/flintlib/python-flint/issues/112 ) ,
132+ [ gh-111 ] ( https://github.com/flintlib/python-flint/issues/111 ) ,
133+ [ gh-110 ] ( https://github.com/flintlib/python-flint/issues/110 ) ,
134+ [ gh-108 ] ( https://github.com/flintlib/python-flint/issues/108 ) :
135+ Add pyproject.toml and build dependencies. This means that python-flint can
136+ be built from source without ` --no-build-isolation ` .
137+ - [ gh-109 ] ( https://github.com/flintlib/python-flint/issues/109 ) :
138+ Use exact division for non-field domains. Now ` fmpz(6)/fmpz(3) ` returns an
139+ exact result ` fmpz(2) ` or raises an error if an exact result is not possible.
140+ Similar changes for ` fmpz_poly/fmpz ` , ` fmpz_mat/fmpz ` , and for polynomial
141+ division with ` fmpz_poly ` , ` fmpq_poly ` , ` nmod_poly ` and ` fmpz_mod_poly ` .
142+ - [ gh-106 ] ( https://github.com/flintlib/python-flint/issues/106 ) :
143+ Add ` fmpz_mod_mat ` for matrices of integers mod ` n ` where ` n ` is larger than
144+ word sized.
145+ - [ gh-104 ] ( https://github.com/flintlib/python-flint/issues/104 ) :
146+ Bump Flint from 3.0.0 to 3.0.1
147+
1311480.5.0
132149
133150Important compatibility changes:
134151
135- - gh-80 , gh-94 , gh-98 : Switch from Flint 2.9 to Flint 3.
136- - gh-100 : Supports Python 3.12 by using setuptools instead of numpy.distutils.
152+ - [ gh-80 ] ( https://github.com/flintlib/python-flint/issues/80 ) ,
153+ [ gh-94 ] ( https://github.com/flintlib/python-flint/issues/94 ) ,
154+ [ gh-98 ] ( https://github.com/flintlib/python-flint/issues/98 ) :
155+ Switch from Flint 2.9 to Flint 3.
156+ - [ gh-100 ] ( https://github.com/flintlib/python-flint/issues/100 ) :
157+ Supports Python 3.12 by using setuptools instead of numpy.distutils.
137158
138159New features:
139160
140- - gh-87 : Adds ` fmpz_mod_poly ` type for polynomials over ` fmpz_mod ` .
141- - gh-85 : Adds discrete logarithms to ` fmpz_mod ` .
142- - gh-83 : Introduces the ` fmpz_mod ` type for multi-precision integer mods.
161+ - [ gh-87 ] ( https://github.com/flintlib/python-flint/issues/87 ) :
162+ Adds ` fmpz_mod_poly ` type for polynomials over ` fmpz_mod ` .
163+ - [ gh-85 ] ( https://github.com/flintlib/python-flint/issues/85 ) :
164+ Adds discrete logarithms to ` fmpz_mod ` .
165+ - [ gh-83 ] ( https://github.com/flintlib/python-flint/issues/83 ) :
166+ Introduces the ` fmpz_mod ` type for multi-precision integer mods.
143167
144168Bug fixes:
145169
146- - gh-93 : Fixes a bug with ` pow(int, int, fmpz) ` which previously gave incorrect
170+ - [ gh-93 ] ( https://github.com/flintlib/python-flint/issues/93 ) :
171+ Fixes a bug with ` pow(int, int, fmpz) ` which previously gave incorrect
147172 results.
148- - gh-78 , gh-79 : minor fixes for the ` nmod ` type.
173+ - [ gh-78 ] ( https://github.com/flintlib/python-flint/issues/78 ) ,
174+ [ gh-79 ] ( https://github.com/flintlib/python-flint/issues/79 ) :
175+ minor fixes for the ` nmod ` type.
149176
1501770.4.4
151178
152- - gh-75 , gh-77 : finish bulk of the work in refactoring ` python-flint ` into
179+ - [ gh-75 ] ( https://github.com/flintlib/python-flint/issues/75 ) ,
180+ [ gh-77 ] ( https://github.com/flintlib/python-flint/issues/77 ) :
181+ finish bulk of the work in refactoring ` python-flint ` into
153182 submodules
154- - gh-72 : The roots method of ` arb_poly ` is not supported. Use either the
183+ - [ gh-72 ] ( https://github.com/flintlib/python-flint/issues/72 ) :
184+ The roots method of ` arb_poly ` is not supported. Use either the
155185 ` complex_roots ` method or ` acb_roots(p).roots() ` to get the old behaviour of
156186 returning the complex roots. The ` roots ` method on ` fmpz_poly ` and
157187 ` fmpq_poly ` now return integer and rational roots respectively. To access
158188 complex roots on these types, use the ` complex_roots ` method. For ` acb_poly ` ,
159189 both ` roots ` and ` complex_roots ` behave the same
160- - gh-71 : Include files in sdist and fix issue gh-70
161- - gh-67 : Continue refactoring job to introduce submodules into ` python-flint `
190+ - [ gh-71 ] ( https://github.com/flintlib/python-flint/issues/71 ) :
191+ Include files in sdist and fix issue
192+ [ gh-70 ] ( https://github.com/flintlib/python-flint/issues/70 )
193+ - [ gh-67 ] ( https://github.com/flintlib/python-flint/issues/67 ) :
194+ Continue refactoring job to introduce submodules into ` python-flint `
162195
1631960.4.3
164197
165- - gh-63 : The ` roots ` method of ` arb_poly ` , and ` nmod_poly ` is no longer
166- supported. Use ` acb_roots(p).roots() ` to get the old behaviour of returning
167- the roots as ` acb ` . Note that the ` roots ` method of ` fmpz_poly ` and
168- ` fmpq_poly ` currently returns the complex roots of the polynomial.
169- - gh-61 : Start refactoring job to introduce submodules into ` python-flint `
198+ - [ gh-63 ] ( https://github.com/flintlib/python-flint/issues/63 ) :
199+ The ` roots ` method of ` arb_poly ` , and ` nmod_poly ` is no longer supported. Use
200+ ` acb_roots(p).roots() ` to get the old behaviour of returning the roots as
201+ ` acb ` . Note that the ` roots ` method of ` fmpz_poly ` and ` fmpq_poly ` currently
202+ returns the complex roots of the polynomial.
203+ - [ gh-61 ] ( https://github.com/flintlib/python-flint/issues/61 ) :
204+ Start refactoring job to introduce submodules into ` python-flint `
170205
1712060.4.2
172207
173- - gh-57 : Adds manylinux wheels
208+ - [ gh-57 ] ( https://github.com/flintlib/python-flint/issues/57 ) :
209+ Adds manylinux wheels
174210
1752110.4.1
176212
177- - gh-47 : Removes Linux wheels, updates instructions for building from source.
213+ - [ gh-47 ] ( https://github.com/flintlib/python-flint/issues/47 ) :
214+ Removes Linux wheels, updates instructions for building from source.
178215
1792160.4.0
180217
181- - gh-45 : Adds wheels for Windows, OSX and manylinux but the Linux wheels are
182- broken.
218+ - [ gh-45 ] ( https://github.com/flintlib/python-flint/issues/45 ) :
219+ Adds wheels for Windows, OSX and manylinux but the Linux wheels are broken.
183220
184221License
185222------------
0 commit comments