diff --git a/array_api_compat/__init__.py b/array_api_compat/__init__.py index 0204fc4b..01f33b20 100644 --- a/array_api_compat/__init__.py +++ b/array_api_compat/__init__.py @@ -17,6 +17,6 @@ this implementation for the default when working with NumPy arrays. """ -__version__ = '1.7.1' +__version__ = '1.8' from .common import * # noqa: F401, F403 diff --git a/dask-xfails.txt b/dask-xfails.txt index 64be2e12..0b651b45 100644 --- a/dask-xfails.txt +++ b/dask-xfails.txt @@ -150,3 +150,8 @@ array_api_tests/test_manipulation_functions.py::test_roll # No mT on dask array array_api_tests/meta/test_hypothesis_helpers.py::test_symmetric_matrices + +# The test suite is incorrectly checking sums that have loss of significance +# (https://github.com/data-apis/array-api-tests/issues/168) +array_api_tests/test_statistical_functions.py::test_sum +array_api_tests/test_statistical_functions.py::test_prod diff --git a/docs/changelog.md b/docs/changelog.md index 9d89057a..d3d02da0 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,5 +1,23 @@ # Changelog +## 1.8 (2024-07-24) + +### Major Changes + +- Add support for [ndonnx](https://github.com/Quantco/ndonnx). Array API + support itself lives in the ndonnx library, but this adds the + {func}`~.is_ndonnx_array` helper function. + ([@adityagoel4512](https://github.com/adityagoel4512)). + +- Partial support for the [2023.12 version of the + standard](https://data-apis.org/array-api/latest/changelog.html#v2023-12). + This includes + - Wrappers for `clip()`. + - torch wrapper for `copysign()` with correct type promotion. + + Note that many of the new functions in the 2023.12 version of the standard + are already fully implemented in upstream libraries and will already work. + ## 1.7.1 (2024-05-28) ### Minor Changes diff --git a/docs/helper-functions.rst b/docs/helper-functions.rst index 5516bf60..22cf7199 100644 --- a/docs/helper-functions.rst +++ b/docs/helper-functions.rst @@ -50,3 +50,4 @@ yet. .. autofunction:: is_dask_array .. autofunction:: is_jax_array .. autofunction:: is_pydata_sparse_array +.. autofunction:: is_ndonnx_array diff --git a/docs/index.md b/docs/index.md index 02320330..a78e9314 100644 --- a/docs/index.md +++ b/docs/index.md @@ -2,9 +2,9 @@ This is a small wrapper around common array libraries that is compatible with the [Array API standard](https://data-apis.org/array-api/latest/). Currently, -NumPy, CuPy, PyTorch, Dask, JAX, and Sparse are supported. If you want support -for other array libraries, or if you encounter any issues, please [open an -issue](https://github.com/data-apis/array-api-compat/issues). +NumPy, CuPy, PyTorch, Dask, JAX, ndonnx, and Sparse are supported. If you want +support for other array libraries, or if you encounter any issues, please +[open an issue](https://github.com/data-apis/array-api-compat/issues). Note that some of the functionality in this library is backwards incompatible with the corresponding wrapped libraries. The end-goal is to eventually make @@ -61,10 +61,11 @@ import array_api_compat.dask as da ``` ```{note} -There is no `array_api_compat.jax` submodule. JAX support is contained in JAX -itself in the `jax.experimental.array_api` module. array-api-compat simply -wraps that submodule. The main JAX support in this module consists of -supporting it in the [helper functions](helper-functions). +There are no `array_api_compat` submodules for JAX, sparse, or ndonnx. These +support for these libraries is contained in the libraries themselves (JAX +support is in the `jax.experimental.array_api` module). The +array-api-compat support for these libraries consists of supporting them in +the [helper functions](helper-functions). ``` Each will include all the functions from the normal NumPy/CuPy/PyTorch/dask.array @@ -118,7 +119,7 @@ cp -R array_api_compat/ mylib/vendored/array_api_compat You may also rename it to something else if you like (nowhere in the code references the name "array_api_compat"). -Alternatively, the library may be installed as dependency on PyPI. +Alternatively, the library may be installed as dependency from PyPI. (scope)= ## Scope