Blosc / Blosc/python-blosc2

Array API compliance

Đang mở
#466 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
enhancement help wanted
Ngôn ngữ chính
Python
Star
211
Fork
58
Merge trung bình
1 ngày 17 giờ
Pull request đã merge (30 ngày)
6

Mô tả

The following is a summary of the failing tests in the array-api-tests suite. When you have managed to make the test pass, mark the box next to the file.

There are three main groups of tests:
1 - lazy expression and chunking related things (unique_counts, cumulative_sum etc.)
2 - indexing related things (chiefly implement fancy indexing for .slice method)
3 - improving numexpr (add op_codes such as ge_bcd etc.)

- [ ] ``test_utility_functions.py`` : add ``blosc2.diff`` function, ~``squeeze`` needs to be modified to return a view (at C-level, follow expand_dims)~
- [x] ~``test_statistical_functions.py`` : add ``cumulative_sum`` and ``cumulative_prod``~
- [ ] ``test_special_cases.py``: everything
- [ ] ``test_sorting_functions.py``: add ``argsort``
- [ ] ``test_signatures.py`` : everything
- [ ] ``test_set_functions.py``: add ``unique_counts``, ``unique_inverse``, ``unique_all``, ``unique_values``
- [ ] ``test_searching_functions.py``: ~add ``argmax``, ``argmin``~, ``where`` attribute to ``NDArray``, ``nonzero``, ``count_nonzero``
- [ ] ``test_operators_and_elementwise_functions.py``: everything
- [ ] ``test_manipulation_functions.py``: SERIOUS (Fatal Python error: Floating-point exception)
- [ ] ``test_linalg.py``: haven't implemented most things (see #476), which is fine, but some tests also fail because numexpr needs a ge_bcd opcode.
- [x] ~``test_inspection_functions``: passes all~
- [ ] ``test_indexing_functions.py``: need to improve``take`` and ``take_along_axis`` (latter fails tests)
- [ ] ``test_has_names`` : fails 23 tests, need to add functions listed in comment below
- [ ] ``test_fft.py``: skips all tests
- [ ] ``test_data_type_functions.py``: a few different things (11 tests), add ``broadcast_arrays``
- [ ] ``test_creation_functions.py``: add ``reshape`` for N-D arrays.
- [x] ~``test_constants.py``: passes all~
- [ ] ``test_array_object.py``: one test takes too long for some reason sometimes

In addition, it would be nice to revamp the documentation to mirror the array API layout and classification of functions/classes/methods etc.

In order to run the tests, follow these steps:
1. Git clone array-api test suite https://github.com/data-apis/array-api-tests
2. Navigate to array-api-tests and ``$ pip install -r requirements.txt`` into environment.
3. Return to home directory, git clone blosc2, navigate to resulting directory and ``pip install -e .`` in your environment.
4. Run tests from python-blosc2 directory via
``ARRAY_API_TESTS_MODULE=blosc2 pytest ../array-api-tests/array_api_tests/test_has_names.py ``

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Bắt đầu bằng cách cài đặt array-api-tests và python-blosc2 như đã mô tả, sau đó chạy lệnh pytest được cung cấp cho test_has_names.py. Xem xét các bộ kiểm thử được liệt kê là đang thất bại, bao gồm test_utility_functions.py, test_sorting_functions.py, test_set_functions.py và test_indexing_functions.py, rồi chọn một nhóm có phạm vi hẹp. Công việc được xem là hoàn tất khi các array-api-tests đã chọn chạy thành công và mục tương ứng trong checklist được đánh dấu.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
python
Lĩnh vực
data
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
20/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.