-
Notifications
You must be signed in to change notification settings - Fork 34
Add support for NumPy 2.0 #79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 6 commits
2d30901
ae488cc
14c8506
37abe30
6021c55
8cd9536
f1d1dd4
b9d8a9b
165779a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
name: Array API Tests (NumPy dev) | ||
|
||
on: [push, pull_request] | ||
|
||
jobs: | ||
array-api-tests-numpy-dev: | ||
uses: ./.github/workflows/array-api-tests.yml | ||
with: | ||
package-name: numpy | ||
extra-requires: '--pre --extra-index https://pypi.anaconda.org/scientific-python-nightly-wheels/simple' | ||
xfails-file-extra: '-dev' |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
# asarray(copy=False) is not yet implemented | ||
array_api_tests/test_creation_functions.py::test_asarray_arrays | ||
|
||
# finfo(float32).eps returns float32 but should return float | ||
array_api_tests/test_data_type_functions.py::test_finfo[float32] | ||
|
||
# Array methods and attributes not already on np.ndarray cannot be wrapped | ||
array_api_tests/test_has_names.py::test_has_names[array_method-to_device] | ||
array_api_tests/test_has_names.py::test_has_names[array_attribute-device] | ||
|
||
# linalg tests require https://github.com/data-apis/array-api-tests/pull/101 | ||
# cleanups. Also some tests are using .mT | ||
array_api_tests/test_linalg.py::test_solve | ||
|
||
# Array methods and attributes not already on np.ndarray cannot be wrapped | ||
array_api_tests/test_signatures.py::test_array_method_signature[__array_namespace__] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This method exists already for a few weeks, and I just merged what's probably the fix to make this test pass: numpy/numpy#25595 |
||
array_api_tests/test_signatures.py::test_array_method_signature[to_device] | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. About to land: numpy/numpy#25233 |
||
|
||
# NumPy deviates in some special cases for floordiv | ||
array_api_tests/test_special_cases.py::test_binary[floor_divide(x1_i is +infinity and isfinite(x2_i) and x2_i > 0) -> +infinity] | ||
array_api_tests/test_special_cases.py::test_binary[floor_divide(x1_i is +infinity and isfinite(x2_i) and x2_i < 0) -> -infinity] | ||
array_api_tests/test_special_cases.py::test_binary[floor_divide(x1_i is -infinity and isfinite(x2_i) and x2_i > 0) -> -infinity] | ||
array_api_tests/test_special_cases.py::test_binary[floor_divide(x1_i is -infinity and isfinite(x2_i) and x2_i < 0) -> +infinity] | ||
array_api_tests/test_special_cases.py::test_binary[floor_divide(isfinite(x1_i) and x1_i > 0 and x2_i is -infinity) -> -0] | ||
array_api_tests/test_special_cases.py::test_binary[floor_divide(isfinite(x1_i) and x1_i < 0 and x2_i is +infinity) -> -0] | ||
array_api_tests/test_special_cases.py::test_binary[__floordiv__(x1_i is +infinity and isfinite(x2_i) and x2_i > 0) -> +infinity] | ||
array_api_tests/test_special_cases.py::test_binary[__floordiv__(x1_i is +infinity and isfinite(x2_i) and x2_i < 0) -> -infinity] | ||
array_api_tests/test_special_cases.py::test_binary[__floordiv__(x1_i is -infinity and isfinite(x2_i) and x2_i > 0) -> -infinity] | ||
array_api_tests/test_special_cases.py::test_binary[__floordiv__(x1_i is -infinity and isfinite(x2_i) and x2_i < 0) -> +infinity] | ||
array_api_tests/test_special_cases.py::test_binary[__floordiv__(isfinite(x1_i) and x1_i > 0 and x2_i is -infinity) -> -0] | ||
array_api_tests/test_special_cases.py::test_binary[__floordiv__(isfinite(x1_i) and x1_i < 0 and x2_i is +infinity) -> -0] | ||
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(x1_i is +infinity and isfinite(x2_i) and x2_i > 0) -> +infinity] | ||
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(x1_i is +infinity and isfinite(x2_i) and x2_i < 0) -> -infinity] | ||
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(x1_i is -infinity and isfinite(x2_i) and x2_i > 0) -> -infinity] | ||
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(x1_i is -infinity and isfinite(x2_i) and x2_i < 0) -> +infinity] | ||
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(isfinite(x1_i) and x1_i > 0 and x2_i is -infinity) -> -0] | ||
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(isfinite(x1_i) and x1_i < 0 and x2_i is +infinity) -> -0] | ||
|
||
# https://github.com/numpy/numpy/issues/21213 | ||
array_api_tests/test_special_cases.py::test_binary[__pow__(x1_i is -infinity and x2_i > 0 and not (x2_i.is_integer() and x2_i % 2 == 1)) -> +infinity] | ||
array_api_tests/test_special_cases.py::test_binary[__pow__(x1_i is -0 and x2_i > 0 and not (x2_i.is_integer() and x2_i % 2 == 1)) -> +0] | ||
array_api_tests/test_special_cases.py::test_iop[__ipow__(x1_i is -infinity and x2_i > 0 and not (x2_i.is_integer() and x2_i % 2 == 1)) -> +infinity] | ||
array_api_tests/test_special_cases.py::test_iop[__ipow__(x1_i is -0 and x2_i > 0 and not (x2_i.is_integer() and x2_i % 2 == 1)) -> +0] | ||
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 | ||
|
||
# fft functions are not yet supported | ||
# (https://github.com/data-apis/array-api-compat/issues/67) | ||
array_api_tests/test_fft.py::test_fft | ||
array_api_tests/test_fft.py::test_ifft | ||
array_api_tests/test_fft.py::test_fftn | ||
array_api_tests/test_fft.py::test_ifftn | ||
array_api_tests/test_fft.py::test_rfft | ||
array_api_tests/test_fft.py::test_irfft | ||
array_api_tests/test_fft.py::test_rfftn | ||
array_api_tests/test_fft.py::test_irfftn | ||
array_api_tests/test_fft.py::test_hfft | ||
array_api_tests/test_fft.py::test_ihfft |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ndarray.mT
exists now. not sure if this test still needs skipping, or only this part of the comment needs to be removed?