Skip to content

Commit dd67b06

Browse files
Merge pull request #113 from oscarbenjamin/pr_0.6.0
Bump version to 0.6.0
2 parents 68c240c + eab16c3 commit dd67b06

File tree

8 files changed

+73
-33
lines changed

8 files changed

+73
-33
lines changed

.github/workflows/buildwheel.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
if: ${{ matrix.os == 'windows-2019' }}
3333

3434
- name: Build wheels
35-
uses: pypa/[email protected].2
35+
uses: pypa/[email protected].5
3636
env:
3737
CIBW_BUILD: cp39-* cp310-* cp311-* cp312-*
3838
CIBW_SKIP: "*-win32 *-manylinux_i686 *-musllinux_*"

README.md

Lines changed: 62 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,9 @@ Build from source
3636
-----------------
3737

3838
For 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

4543
See here for instructions on building FLINT:
4644

@@ -128,58 +126,97 @@ To do
128126
CHANGELOG
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+
131148
0.5.0
132149

133150
Important 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

138159
New 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

144168
Bug 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

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

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

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

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

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

184221
License
185222
------------

bin/build_mingw64_wheel.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ fi
4444
PYTHON=$PYTHONDIR/python
4545
VER="${PYTHONVER//./}"
4646

47-
WHEELNAME=python_flint-0.5.0-cp$VER-cp$VER-win_amd64.whl
47+
WHEELNAME=python_flint-0.6.0-cp$VER-cp$VER-win_amd64.whl
4848

4949
$PYTHON -c 'print("hello world")'
5050

@@ -90,7 +90,7 @@ wheel pack python_flint-*
9090
cd ..
9191

9292
# Make the wheel relocatable
93-
delvewheel repair dist/python_flint-0.5.0-cp$VER-cp$VER-win_amd64.whl \
93+
delvewheel repair dist/python_flint-0.6.0-cp$VER-cp$VER-win_amd64.whl \
9494
--add-path .local/bin:.local/lib/
9595

9696
# Make a virtual enironment to test the wheel

bin/coverage.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,9 @@ source bin/activate
3131

3232
export PYTHON_FLINT_COVERAGE=true
3333

34+
# Force a rebuild of everything with coverage tracing enabled:
35+
# touch src/flint/flintlib/*
36+
3437
python setup.py build_ext --inplace
3538

3639
coverage run -m flint.test $@

doc/source/conf.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,9 +51,9 @@
5151
# built documents.
5252
#
5353
# The short X.Y version.
54-
version = '0.5.0'
54+
version = '0.6.0'
5555
# The full version, including alpha/beta/rc tags.
56-
release = '0.5.0'
56+
release = '0.6.0'
5757

5858
# The language for content autogenerated by Sphinx. Refer to documentation
5959
# for a list of supported languages.

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta"
77
[project]
88
name = "python-flint"
99
description = "Bindings for FLINT and Arb"
10-
version = "0.5.0"
10+
version = "0.6.0"
1111
urls = {Homepage = "https://github.com/flintlib/python-flint"}
1212
authors = [
1313
{name = "Fredrik Johansson", email = "[email protected]"},

src/flint/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,4 @@
3333
from .types.dirichlet import *
3434
from .functions.showgood import good, showgood
3535

36-
__version__ = '0.5.0'
36+
__version__ = '0.6.0'

src/flint/test/test.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ def raises(f, exception):
3535

3636
def test_pyflint():
3737

38-
assert flint.__version__ == "0.5.0"
38+
assert flint.__version__ == "0.6.0"
3939

4040
ctx = flint.ctx
4141
assert str(ctx) == repr(ctx) == _default_ctx_string

0 commit comments

Comments
 (0)