Skip to content

Commit 2513931

Browse files
committed
Update changelog for 0.7.0
1 parent a781226 commit 2513931

File tree

1 file changed

+81
-30
lines changed

1 file changed

+81
-30
lines changed

README.md

Lines changed: 81 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -142,10 +142,10 @@ Compatible versions (note that 0.7.0 is not yet released):
142142
| python-flint | Release date | CPython | FLINT | Cython |
143143
|--------------|--------------|-------------|------------|------------|
144144
| `0.7.0` | Not yet | `3.10-3.13` | `3.0-3.2?` | `3.0-3.1?` |
145-
| `0.6.0` | 1st Feb 2024 | `3.9-3.12` | `3.0-3.1` | `3.0` only |
145+
| `0.6.0` | 1st Feb 2024 | `3.9-3.12` | `3.0` only | `3.0` only |
146146

147147
As of python-flint 0.7.0, CPython 3.13 free-threaded builds are tested in CI
148-
but wheels are yet provided on PyPI. There are no known issues related to using
148+
but wheels are not provided on PyPI. There are no known issues related to using
149149
python-flint in a [PEP 703](https://peps.python.org/pep-0703/) free-threaded
150150
build but it is likely that mutating objects from multiple threads is not safe.
151151

@@ -156,49 +156,100 @@ on ARM but may be added when CI runners for Linux/Windows are available.
156156
CHANGELOG
157157
-------------
158158

159-
Next release:
160-
161-
- [gh-172](https://github.com/flintlib/python-flint/pull/161)
162-
Add `fmpz_is_square`.
159+
Next release (0.7.0)...
160+
161+
Contributors (0.7.0):
162+
163+
- Jake Moss (JM)
164+
- Giacomo Pope (GP)
165+
- Joris Roos (JR)
166+
- Edgar Costa (EC)
167+
- Oscar Benjamin (OB)
168+
169+
Highlights (0.7.0):
170+
171+
- [gh-97](https://github.com/flintlib/python-flint/pull/97),
172+
[gh-182](https://github.com/flintlib/python-flint/pull/180):
173+
Add `fq_default` and `fq_default_poly` for finite fields and
174+
univariate polynomials over finite fields. (GP)
175+
- [gh-132](https://github.com/flintlib/python-flint/pull/132),
176+
[gh-164](https://github.com/flintlib/python-flint/pull/164),
177+
[gh-190](https://github.com/flintlib/python-flint/pull/190),
178+
[gh-192](https://github.com/flintlib/python-flint/pull/192):
179+
Add `fmpz_mpoly`, `fmpq_mpoly`, `nmod_poly` and `fmpz_mod_poly`
180+
types for multivariate polynomials with integer, rational or
181+
integers mod n coefficients. (JM)
182+
- [gh-142](https://github.com/flintlib/python-flint/pull/142)
183+
Add `acb_theta` module for the numerical evaluation of [theta
184+
functions](https://flintlib.org/doc/acb_theta.html) (only
185+
available for `Flint >= 3.1`). (EC)
186+
- [gh-129](https://github.com/flintlib/python-flint/pull/129)
187+
Use meson/meson-python instead of setuptools as the build system
188+
for parallel builds and better detection of dependency
189+
requirements. (OB)
190+
191+
Compatibility break (0.7.0):
192+
193+
- [gh-189](https://github.com/flintlib/python-flint/pull/189)
194+
As of python-flint 0.7.0 `fmpq_poly.factor()` now returns
195+
primitive rather than monic factors i.e. `2*x + 1` rather than `x
196+
+ 1/2`. This ensures consistency between all poly types including
197+
between `fmpq_poly` and `fmpq_mpoly`. (OB)
198+
199+
Other changes (0.7.0):
200+
201+
- [gh-194](https://github.com/flintlib/python-flint/pull/194)
202+
Add version checking for build requirements. (OB)
203+
- [gh-180](https://github.com/flintlib/python-flint/pull/180)
204+
Add `equal_trunc`, `add_trunc`, `sub_trunc`, `mul_low`, `mul_mod`
205+
and `pow_trunc` methods to `fmpz_mod_poly`. (GP)
206+
- [gh-177](https://github.com/flintlib/python-flint/pull/177)
207+
Remove old Py2 code for compatibility with Cython 3.1. (OB)
208+
- [gh-176](https://github.com/flintlib/python-flint/pull/176)
209+
Fix the error messages from `fmpq` constructor. (OB)
210+
- [gh-174](https://github.com/flintlib/python-flint/pull/174)
211+
Add `pow_mod` and `compose_mod` methods to `nmod_poly` and
212+
`fmpz_mod_poly`. Also add some missing methods to `nmod_poly` that
213+
other poly types already have. (GP)
214+
- [gh-172](https://github.com/flintlib/python-flint/pull/172)
215+
Add `fmpz_is_square`. (JR)
216+
- [gh-168](https://github.com/flintlib/python-flint/pull/168)
217+
Make comparisons consistent between different types. Add `is_one`
218+
and `is_zero` for all poly types. (OB)
163219
- [gh-161](https://github.com/flintlib/python-flint/pull/161)
164-
Add `acb.lerch_phi` to compute the Lerch transcendent.
165-
- [gh-132](https://github.com/flintlib/python-flint/pull/132)
166-
Add `fmpz_mpoly` and `fmpq_mpoly` types for multivariate polynomials with
167-
integer or rational coefficients.
220+
Add `acb.lerch_phi` to compute the Lerch transcendent. (OB)
168221
- [gh-160](https://github.com/flintlib/python-flint/pull/160)
169-
Add `bits` to `arb` and `acb`, add `log_base` to `arb`.
222+
Add `bits` to `arb` and `acb`, add `log_base` to `arb`. (JR)
170223
- [gh-149](https://github.com/flintlib/python-flint/pull/149)
171-
Bump Flint version to 3.1.3-p1 (Flint 3.0.0 - 3.1.3-p1 is supported but the
172-
wheels are built with 3.1.3-p1).
224+
Bump Flint version to 3.1.3-p1 (Flint 3.0.0 - 3.1.3-p1 is
225+
supported but the wheels are built with 3.1.3-p1). (OB)
173226
- [gh-148](https://github.com/flintlib/python-flint/pull/148)
174-
Remove debug symbols to make smaller Linux binaries.
227+
Remove debug symbols to make smaller Linux binaries. (OB)
175228
- [gh-144](https://github.com/flintlib/python-flint/pull/144)
176-
Add `rel_one_accuracy_bits` to `arb` and `acb`.
177-
- [gh-142](https://github.com/flintlib/python-flint/pull/142)
178-
Add `acb_theta` module for the numerical evaluation of [theta
179-
functions](https://flintlib.org/doc/acb_theta.html) (only available for
180-
`Flint >= 3.1`).
229+
Add `rel_one_accuracy_bits` to `arb` and `acb`. (EC)
181230
- [gh-137](https://github.com/flintlib/python-flint/pull/137)
182-
Add `erfinv` and `erfcinv` for `arb`.
183-
- [gh-129](https://github.com/flintlib/python-flint/pull/129)
184-
Use meson-python instead of setuptools as the build backend.
231+
Add `erfinv` and `erfcinv` for `arb`. (JR)
232+
- [gh-119](https://github.com/flintlib/python-flint/pull/119)
233+
Add compatibility with Flint 3.1. (OB)
185234

186235
0.6.0
187236

188237
- [gh-112](https://github.com/flintlib/python-flint/issues/112),
189238
[gh-111](https://github.com/flintlib/python-flint/issues/111),
190239
[gh-110](https://github.com/flintlib/python-flint/issues/110),
191240
[gh-108](https://github.com/flintlib/python-flint/issues/108):
192-
Add pyproject.toml and build dependencies. This means that python-flint can
193-
be built from source without `--no-build-isolation`.
241+
Add pyproject.toml and build dependencies. This means that
242+
python-flint can be built from source without
243+
`--no-build-isolation`.
194244
- [gh-109](https://github.com/flintlib/python-flint/issues/109):
195-
Use exact division for non-field domains. Now `fmpz(6)/fmpz(3)` returns an
196-
exact result `fmpz(2)` or raises an error if an exact result is not possible.
197-
Similar changes for `fmpz_poly/fmpz`, `fmpz_mat/fmpz`, and for polynomial
198-
division with `fmpz_poly`, `fmpq_poly`, `nmod_poly` and `fmpz_mod_poly`.
245+
Use exact division for non-field domains. Now `fmpz(6)/fmpz(3)`
246+
returns an exact result `fmpz(2)` or raises an error if an exact
247+
result is not possible. Similar changes for `fmpz_poly/fmpz`,
248+
`fmpz_mat/fmpz`, and for polynomial division with `fmpz_poly`,
249+
`fmpq_poly`, `nmod_poly` and `fmpz_mod_poly`.
199250
- [gh-106](https://github.com/flintlib/python-flint/issues/106):
200-
Add `fmpz_mod_mat` for matrices of integers mod `n` where `n` is larger than
201-
word sized.
251+
Add `fmpz_mod_mat` for matrices of integers mod `n` where `n` is
252+
larger than word sized.
202253
- [gh-104](https://github.com/flintlib/python-flint/issues/104):
203254
Bump Flint from 3.0.0 to 3.0.1
204255

0 commit comments

Comments
 (0)