|
1 | 1 | # Changelog |
2 | 2 |
|
| 3 | +## 2.5 (2026-02-XX) |
| 4 | + |
| 5 | +This release targets the 2025.12 revision of the Array API standard, and supports |
| 6 | +Python versions 3.10--3.14. |
| 7 | + |
| 8 | +### Major Changes |
| 9 | + |
| 10 | +- The default version of the array API standard is now 2025.12. Previous versions can |
| 11 | + still be enabled via the [flags API](array-api-strict-flags), e.g., by calling |
| 12 | + `set_array_api_strict_flags(api_version='2024.12')` or setting |
| 13 | + `ARRAY_API_STRICT_API_VERSION=2024.12`. |
| 14 | + |
| 15 | + Note that this support is still relatively undertested. Please [report any |
| 16 | + issues](https://github.com/data-apis/array-api-strict/issues) you find. |
| 17 | + |
| 18 | +- The following functions, new in the 2025.12 revision, are implemented: |
| 19 | + |
| 20 | + - `isin` |
| 21 | + - `broadcast_shapes` |
| 22 | + - `linalg.eig` |
| 23 | + - `linalg.eigvals` |
| 24 | + |
| 25 | +The following updates to existing APIs have been implemented, per the 2025.12 Array API |
| 26 | +standard revision: |
| 27 | + |
| 28 | +- `searchsorted` now accepts a python scalar for its second argument, |
| 29 | + `x2`. |
| 30 | + |
| 31 | +- `expand_dims` now accepts tuples of axes. |
| 32 | + |
| 33 | +- `permute_dims` now accepts negative axes, with the usual meaning (`axis=-1` is |
| 34 | + the last axis, `-2` is the second-to-last axis, and so on). |
| 35 | + |
| 36 | +The following functions now return tuples instead of lists: |
| 37 | + |
| 38 | +- `__array_namespace_info__().devices` |
| 39 | +- `broadcast_arrays` |
| 40 | +- `meshgrid` |
| 41 | + |
| 42 | + |
| 43 | +- Array objects can now be pickled. |
| 44 | + |
| 45 | + |
| 46 | +### Minor Changes |
| 47 | + |
| 48 | +- Several functions were diverging from the standard, and have been fixed to follow |
| 49 | + the 2025.12 revision of the standard: |
| 50 | + |
| 51 | + - `clip` has been updated to accept python `int` scalars for its `min` and `max` |
| 52 | + arguments for clipping a floating-point array. |
| 53 | + - `clip` has been updated to always returns a copy of an input array |
| 54 | + - `full` and `full_like` now reject array values for the `fill_value` argument |
| 55 | + - `expand_dims` accepts its axis argument as either positional or keyword argument |
| 56 | + |
| 57 | +- `sign` of a complex zero, `sign(0 + 0j)` has been fixed to return zero |
| 58 | + |
| 59 | + |
| 60 | +### Contributors |
| 61 | + |
| 62 | +The following users contributed to this release: |
| 63 | + |
| 64 | +Evgeni Burovski, |
| 65 | +Lucas Colley, |
| 66 | +Lucy Liu |
| 67 | + |
| 68 | + |
3 | 69 | ## 2.4.1 (2025-07-27) |
4 | 70 |
|
5 | 71 | ### Major Changes |
|
8 | 74 |
|
9 | 75 | - Support for Python versions 3.10 and 3.11 has been reinstated. |
10 | 76 |
|
11 | | - |
12 | 77 | ### Minor Changes |
13 | 78 |
|
14 | 79 | - Arithmetic operations no longer accept NumPy arrays. |
|
0 commit comments