Skip to content

Commit c95edca

Browse files
authored
Merge pull request #120 from asmeurer/release
1.5.1 release
2 parents 6fac044 + fa807a2 commit c95edca

File tree

7 files changed

+190
-168
lines changed

7 files changed

+190
-168
lines changed

CHANGELOG.md

-163
This file was deleted.

CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
docs/changelog.md

array_api_compat/__init__.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,6 @@
1717
this implementation for the default when working with NumPy arrays.
1818
1919
"""
20-
__version__ = '1.5'
20+
__version__ = '1.5.1'
2121

2222
from .common import * # noqa: F401, F403

docs/changelog.md

+179
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,179 @@
1+
# Changelog
2+
3+
## 1.5.1 (2024-03-20)
4+
5+
## Minor Changes
6+
7+
- Add [HTML documentation](https://data-apis.org/array-api-compat/). Includes
8+
new documentation on the [module scope](scope) and new [developer
9+
documentation](dev/index.md).
10+
11+
- Fix `array_api_compat.numpy.asarray(torch.Tensor)` to return a NumPy array.
12+
13+
- Allow Python scalars in torch functions.
14+
15+
- Fix the `torch.std` wrapper when correction is an `int`.
16+
17+
- Fix issues with `qr` and `svd` in the Dask wrappers.
18+
19+
## 1.5 (2024-03-07)
20+
21+
### Major Changes
22+
23+
- Add support for Dask ([@lithomas1](https://github.com/lithomas1)).
24+
25+
- Add support for JAX. Note that unlike other array libraries,
26+
array-api-compat does not contain any wrappers for JAX functions. All JAX
27+
array API support is in JAX itself. Thus, there is no `array_api_compat.jax`
28+
submodule, and `array_namespace(<JAX array>)` returns the
29+
`jax.experimental.array_api` module.
30+
31+
- The functions `is_numpy_array(x)`, `is_cupy_array(x)`, `is_torch_array(x)`,
32+
`is_dask_array(x)`, `is_jax_array(x)` are now part of the public
33+
`array_api_compat` API.
34+
35+
- Add wrappers for the `fft` extension module for NumPy, CuPy, and PyTorch.
36+
37+
### Minor Changes
38+
39+
- Allow `'2022.12'` as the `api_version` in `array_namespace()`. `'2021.12'`
40+
is also supported but will issue a warning since the returned namespace will
41+
still be a 2022.12 compliant one.
42+
43+
- Add wrapper for numpy.linalg.solve, which broadcasts the inputs according to
44+
the standard.
45+
46+
- Add wrappers for various PyTorch linalg functions.
47+
48+
- Fix a bug with `numpy.linalg.vector_norm(keepdims=True)`.
49+
50+
- BREAKING: Update `vecdot` wrappers to apply `axes` before broadcasting, not
51+
after. This matches the updated 2023.12 standard wording, and also the
52+
behavior of the new `numpy.vecdot` gufunc in NumPy 2.0.
53+
54+
- Fix some linalg functions which were supposed to be in both the main
55+
namespace and the linalg extension namespace.
56+
57+
- Add Ruff to CI. ([@adonath](https://github.com/adonath))
58+
59+
- Test that internal definitions of `__all__` are self-consistent, which
60+
should help to avoid issues where wrappers are accidentally not exported to
61+
the compat namespaces properly.
62+
63+
## 1.4.1 (2024-01-18)
64+
65+
### Minor Changes
66+
67+
- Add support for the upcoming NumPy 2.0 release.
68+
69+
- Added a torch wrapper for `trace` (`torch.trace` doesn't support the
70+
`offset` argument or stacking)
71+
72+
- Wrap numpy, cupy, and torch `nonzero` to raise an error for zero-dimensional
73+
input arrays.
74+
75+
- Add torch wrapper for `newaxis`.
76+
77+
- Improve error message for `array_namespace`
78+
79+
- Fix linalg.cholesky returning the conjugate of the expected upper
80+
decomposition for numpy and cupy.
81+
82+
## 1.4 (2023-09-13)
83+
84+
### Major Changes
85+
86+
- Releases are now made with GitHub Actions (thanks
87+
[@matthewfeickert](https://github.com/matthewfeickert)).
88+
89+
### Minor Changes
90+
91+
- Fix `torch.result_type()` cross-kind promotion
92+
([@lucascolley](https://github.com/lucascolley)).
93+
94+
- Fix the torch.take() wrapper to make axis optional for ndim = 1.
95+
96+
- Add requires-python metadata to the package
97+
([@matthewfeickert](https://github.com/matthewfeickert)).
98+
99+
## 1.3 (2023-06-20)
100+
101+
### Major Changes
102+
103+
- Add [2022.12](https://data-apis.org/array-api/2022.12/) standard support.
104+
This includes things like adding complex dtype support, adding the new
105+
`take` function, and various minor changes in the specification.
106+
107+
### Minor Changes
108+
109+
- Support `"cpu"` in CuPy `to_device()`.
110+
111+
- Return a new array in NumPy/CuPy `reshape(copy=False)`.
112+
113+
- Fix signatures for PyTorch `broadcast_to` and `permute_dims`.
114+
115+
## 1.2 (2023-04-03)
116+
117+
### Major Changes
118+
119+
- Support the linalg extension in the `array_api_compat.torch` namespace.
120+
121+
- Add `isdtype()`.
122+
123+
### Minor Changes
124+
125+
- Fix the `k` keyword argument to `tril` and `triu` in `torch`.
126+
127+
## 1.1.1 (2023-03-10)
128+
129+
### Major Changes
130+
131+
- Rename `get_namespace()` to `array_namespace()` (`get_namespace()` is
132+
maintained as a backwards compatible alias).
133+
134+
### Minor Changes
135+
136+
- The minimum supported NumPy version is now 1.21. Fixed a few issues with
137+
NumPy 1.21 (with `unique_*` and `asarray`), although there are also a few
138+
known issues with this version (see the README).
139+
140+
- Add `api_version` to `get_namespace()`.
141+
142+
- `array_namespace()` (*née* `get_namespace()`) now works correctly with
143+
`torch` tensors.
144+
145+
- `array_namespace()` (*née* `get_namespace()`) now works correctly with
146+
`numpy.array_api` arrays.
147+
148+
- `array_namespace()` (*née* `get_namespace()`) now raises `TypeError` instead
149+
of `ValueError`.
150+
151+
- Fix the `torch.std` wrapper.
152+
153+
- Add `torch` wrappers for `ones`, `empty`, and `zeros` so that `shape` can be
154+
passed as a keyword argument.
155+
156+
## 1.1 (2023-02-24)
157+
158+
### Major Changes
159+
160+
- Added support for PyTorch.
161+
162+
- Add helper function `size()` (required if torch is used as
163+
`torch.Tensor.size` is a method that is incompatible with the array API
164+
[`.size`](https://data-apis.org/array-api/latest/API_specification/generated/array_api.array.size.html#array_api.array.size)).
165+
166+
- All wrapper functions that wrap existing library functions now pass through
167+
arbitrary `**kwargs`.
168+
169+
### Minor Changes
170+
171+
- Added CI to run against the [array API testsuite](https://github.com/data-apis/array-api-tests).
172+
173+
- Fix `sort(stable=False)` and `argsort(stable=False)` with CuPy.
174+
175+
## 1.0 (2022-12-05)
176+
177+
### Major Changes
178+
179+
- Initial release. Includes support for NumPy and CuPy.

docs/dev/releasing.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ and update the version (the version is not computed from the tag because that
2121
would break vendorability). You should also edit
2222

2323
```
24-
CHANGELOG.md
24+
docs/changelog.md
2525
```
2626

2727
with the changes for the release.

docs/index.md

+1
Original file line numberDiff line numberDiff line change
@@ -182,5 +182,6 @@ libraries.
182182
183183
helper-functions.rst
184184
supported-array-libraries.md
185+
changelog.md
185186
dev/index.md
186187
```

numpy-1-21-xfails.txt

+1
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,7 @@ array_api_tests/test_operators_and_elementwise_functions.py::test_greater[greate
133133
array_api_tests/test_operators_and_elementwise_functions.py::test_greater_equal[greater_equal(x1, x2)]
134134
array_api_tests/test_operators_and_elementwise_functions.py::test_less[__lt__(x1, x2)]
135135
array_api_tests/test_operators_and_elementwise_functions.py::test_less[less(x1, x2)]
136+
array_api_tests/test_operators_and_elementwise_functions.py::test_less_equal[__le__(x1, x2)]
136137
array_api_tests/test_operators_and_elementwise_functions.py::test_less_equal[less_equal(x1, x2)]
137138
array_api_tests/test_operators_and_elementwise_functions.py::test_logaddexp
138139
array_api_tests/test_operators_and_elementwise_functions.py::test_multiply[__imul__(x, s)]

0 commit comments

Comments
 (0)