Skip to content

Commit 14c8506

Browse files
committed
Add GitHub Actions workflow for NumPy dev
1 parent ae488cc commit 14c8506

File tree

2 files changed

+67
-0
lines changed

2 files changed

+67
-0
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
name: Array API Tests (NumPy dev)
2+
3+
on: [push, pull_request]
4+
5+
jobs:
6+
array-api-tests-numpy-dev:
7+
uses: ./.github/workflows/array-api-tests.yml
8+
with:
9+
package-name: numpy
10+
extra-requires: '--pre --extra-index https://pypi.anaconda.org/scientific-python-nightly-wheels/simple'
11+
xfails-file-extra: '-dev'

numpy-dev-xfails.txt

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# asarray(copy=False) is not yet implemented
2+
array_api_tests/test_creation_functions.py::test_asarray_arrays
3+
4+
# finfo(float32).eps returns float32 but should return float
5+
array_api_tests/test_data_type_functions.py::test_finfo[float32]
6+
7+
# Array methods and attributes not already on np.ndarray cannot be wrapped
8+
array_api_tests/test_has_names.py::test_has_names[array_method-__array_namespace__]
9+
array_api_tests/test_has_names.py::test_has_names[array_method-to_device]
10+
array_api_tests/test_has_names.py::test_has_names[array_attribute-device]
11+
array_api_tests/test_has_names.py::test_has_names[array_attribute-mT]
12+
13+
# linalg tests require https://github.com/data-apis/array-api-tests/pull/101
14+
# cleanups. Also some tests are using .mT
15+
array_api_tests/test_linalg.py::test_eigvalsh
16+
array_api_tests/test_linalg.py::test_solve
17+
array_api_tests/test_linalg.py::test_trace
18+
19+
# Array methods and attributes not already on np.ndarray cannot be wrapped
20+
array_api_tests/test_signatures.py::test_array_method_signature[__array_namespace__]
21+
array_api_tests/test_signatures.py::test_array_method_signature[to_device]
22+
23+
# NumPy deviates in some special cases for floordiv
24+
array_api_tests/test_special_cases.py::test_binary[floor_divide(x1_i is +infinity and isfinite(x2_i) and x2_i > 0) -> +infinity]
25+
array_api_tests/test_special_cases.py::test_binary[floor_divide(x1_i is +infinity and isfinite(x2_i) and x2_i < 0) -> -infinity]
26+
array_api_tests/test_special_cases.py::test_binary[floor_divide(x1_i is -infinity and isfinite(x2_i) and x2_i > 0) -> -infinity]
27+
array_api_tests/test_special_cases.py::test_binary[floor_divide(x1_i is -infinity and isfinite(x2_i) and x2_i < 0) -> +infinity]
28+
array_api_tests/test_special_cases.py::test_binary[floor_divide(isfinite(x1_i) and x1_i > 0 and x2_i is -infinity) -> -0]
29+
array_api_tests/test_special_cases.py::test_binary[floor_divide(isfinite(x1_i) and x1_i < 0 and x2_i is +infinity) -> -0]
30+
array_api_tests/test_special_cases.py::test_binary[__floordiv__(x1_i is +infinity and isfinite(x2_i) and x2_i > 0) -> +infinity]
31+
array_api_tests/test_special_cases.py::test_binary[__floordiv__(x1_i is +infinity and isfinite(x2_i) and x2_i < 0) -> -infinity]
32+
array_api_tests/test_special_cases.py::test_binary[__floordiv__(x1_i is -infinity and isfinite(x2_i) and x2_i > 0) -> -infinity]
33+
array_api_tests/test_special_cases.py::test_binary[__floordiv__(x1_i is -infinity and isfinite(x2_i) and x2_i < 0) -> +infinity]
34+
array_api_tests/test_special_cases.py::test_binary[__floordiv__(isfinite(x1_i) and x1_i > 0 and x2_i is -infinity) -> -0]
35+
array_api_tests/test_special_cases.py::test_binary[__floordiv__(isfinite(x1_i) and x1_i < 0 and x2_i is +infinity) -> -0]
36+
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(x1_i is +infinity and isfinite(x2_i) and x2_i > 0) -> +infinity]
37+
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(x1_i is +infinity and isfinite(x2_i) and x2_i < 0) -> -infinity]
38+
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(x1_i is -infinity and isfinite(x2_i) and x2_i > 0) -> -infinity]
39+
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(x1_i is -infinity and isfinite(x2_i) and x2_i < 0) -> +infinity]
40+
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(isfinite(x1_i) and x1_i > 0 and x2_i is -infinity) -> -0]
41+
array_api_tests/test_special_cases.py::test_iop[__ifloordiv__(isfinite(x1_i) and x1_i < 0 and x2_i is +infinity) -> -0]
42+
43+
# testsuite issue with test_square
44+
# https://github.com/data-apis/array-api-tests/issues/190
45+
array_api_tests/test_operators_and_elementwise_functions.py::test_square
46+
47+
# https://github.com/numpy/numpy/issues/21213
48+
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]
49+
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]
50+
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]
51+
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]
52+
array_api_tests/meta/test_hypothesis_helpers.py::test_symmetric_matrices
53+
54+
# The test suite is incorrectly checking sums that have loss of significance
55+
# (https://github.com/data-apis/array-api-tests/issues/168)
56+
array_api_tests/test_statistical_functions.py::test_sum

0 commit comments

Comments
 (0)