apache / arrow-nanoarrow

Helpers for Arrow C Data & Arrow C Stream interfaces
https://arrow.apache.org/nanoarrow
Apache License 2.0
149 stars 34 forks source link

feat(python): DLPack support on CBufferView #469

Closed AlenkaF closed 1 month ago

AlenkaF commented 1 month ago

This PR implements producing part of the DLPack protocol on CBufferView (and CArray/CArrayView) object. With the changes in this PR, the following code works:

>>> import nanoarrow as na
>>> import numpy as np

>>> pa_arr = pa.array([1, 2, 3], type=pa.uint8())
>>> na_array = na.c_array(pa_arr)
>>> na_view = na_array.view()
>>> view = na_view.buffer(1)

>>> np.from_dlpack(view)
array([1, 2, 3], dtype=uint8)

Changes

Included changes in this PR:

Possible follow-up

About DLPack:

DLPack is selected for Array API protocol. See more about it: https://dmlc.github.io/dlpack/latest/python_spec.html

AlenkaF commented 1 month ago

I think this will need the wheel building checks to be run, since I think they enforce some constraints that apply here (like the ability for the test suite to pass without numpy or pyarrow). There is ci/scripts/test-python-wheels.sh that can run this check locally, or you can modify .github/workflows/python-wheels.yaml to run on pull requests (or I'm happy to check locally, too).

Running ../ci/scripts/test-python-wheels.sh "pp*" was successful for me locally though I do not see test_dlpack.py being run:

Output
``` Here we go! Building pp38-macosx_arm64 wheel PyPy 3.8 macOS arm64 - Apple Silicon Installing Python pp38... ✓ 0.00s Setting up build environment... + /Users/alenkafrim/envs/nanoarrow-dev/bin/python -sS /Users/alenkafrim/Library/Caches/cibuildwheel/virtualenv-20.26.2.pyz --activators= --no-periodic-update --pip=24.0 --no-setuptools --no-wheel --symlink-app-data --python /Users/alenkafrim/Library/Caches/cibuildwheel/pypy3.8-v7.3.11-macos_arm64/bin/pypy3 /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/build/venv created virtual environment PyPy3.8.16.final.0-64 in 36ms creator PyPy3Posix(dest=/private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/build/venv, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=24.0, via=symlink, app_data_dir=/Users/alenkafrim/Library/Application Support/virtualenv) added seed packages: pip==24.0 + python -m pip install --upgrade pip -c /Users/alenkafrim/envs/nanoarrow-dev/lib/python3.12/site-packages/cibuildwheel/resources/constraints-python38.txt Requirement already satisfied: pip in ./lib/pypy3.8/site-packages (24.0) + which pip /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/build/venv/bin/pip + pip --version pip 24.0 from /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/build/venv/lib/pypy3.8/site-packages/pip (python 3.8) + which pip + which python /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/build/venv/bin/python + python --version Python 3.8.16 (a9dbdca6fc3286b0addd2240f11d97d8e8de187a, Dec 29 2022, 11:45:30) [PyPy 7.3.11 with GCC Apple LLVM 13.1.6 (clang-1316.0.21.2.5)] + which python ✓ 2.12s Installing build tools... + pip install --upgrade delocate -c /Users/alenkafrim/envs/nanoarrow-dev/lib/python3.12/site-packages/cibuildwheel/resources/constraints-python38.txt Collecting delocate Using cached delocate-0.11.0-py3-none-any.whl.metadata (14 kB) Collecting packaging>=20.9 (from delocate) Using cached packaging-24.0-py3-none-any.whl.metadata (3.2 kB) Collecting typing-extensions (from delocate) Using cached typing_extensions-4.11.0-py3-none-any.whl.metadata (3.0 kB) Collecting macholib (from delocate) Using cached macholib-1.16.3-py2.py3-none-any.whl.metadata (11 kB) Collecting altgraph>=0.17 (from macholib->delocate) Using cached altgraph-0.17.4-py2.py3-none-any.whl.metadata (7.3 kB) Using cached delocate-0.11.0-py3-none-any.whl (228 kB) Using cached packaging-24.0-py3-none-any.whl (53 kB) Using cached macholib-1.16.3-py2.py3-none-any.whl (38 kB) Using cached typing_extensions-4.11.0-py3-none-any.whl (34 kB) Using cached altgraph-0.17.4-py2.py3-none-any.whl (21 kB) Installing collected packages: altgraph, typing-extensions, packaging, macholib, delocate Successfully installed altgraph-0.17.4 delocate-0.11.0 macholib-1.16.3 packaging-24.0 typing-extensions-4.11.0 ✓ 1.58s Building wheel... + python -m pip freeze --all + python -m pip wheel /Users/alenkafrim/repos/arrow-nanoarrow/python --wheel-dir=/private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/built_wheel --no-deps Processing ./python Installing build dependencies ... done Getting requirements to build wheel ... done Installing backend dependencies ... done Preparing metadata (pyproject.toml) ... done Building wheels for collected packages: nanoarrow Building wheel for nanoarrow (pyproject.toml) ... done Created wheel for nanoarrow: filename=nanoarrow-0.5.0.dev0-pp38-pypy38_pp73-macosx_11_0_arm64.whl size=372041 sha256=babdfdee088f504d4672c738ac168ed83fe1603ed8b68a93b402c2cea29d05ce Stored in directory: /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/pip-ephem-wheel-cache-_rjm99h8/wheels/7d/aa/ca/fd367daafc5c0201e4e5d3ccb1e7157b3f0815723c7e0d679d Successfully built nanoarrow ✓ 27.69s Repairing wheel... + delocate-wheel --require-archs arm64 -w /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/repaired_wheel -v /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/built_wheel/nanoarrow-0.5.0.dev0-pp38-pypy38_pp73-macosx_11_0_arm64.whl Fixing: /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/built_wheel/nanoarrow-0.5.0.dev0-pp38-pypy38_pp73-macosx_11_0_arm64.whl ✓ 0.64s + python -sSc 'import platform; print(platform.machine())' Testing wheel... + pip install virtualenv -c /Users/alenkafrim/envs/nanoarrow-dev/lib/python3.12/site-packages/cibuildwheel/resources/constraints-python38.txt Collecting virtualenv Using cached virtualenv-20.26.2-py3-none-any.whl.metadata (4.4 kB) Collecting distlib<1,>=0.3.7 (from virtualenv) Using cached distlib-0.3.8-py2.py3-none-any.whl.metadata (5.1 kB) Collecting filelock<4,>=3.12.2 (from virtualenv) Using cached filelock-3.14.0-py3-none-any.whl.metadata (2.8 kB) Collecting platformdirs<5,>=3.9.1 (from virtualenv) Using cached platformdirs-4.2.2-py3-none-any.whl.metadata (11 kB) Using cached virtualenv-20.26.2-py3-none-any.whl (3.9 MB) Using cached distlib-0.3.8-py2.py3-none-any.whl (468 kB) Using cached filelock-3.14.0-py3-none-any.whl (12 kB) Using cached platformdirs-4.2.2-py3-none-any.whl (18 kB) Installing collected packages: distlib, platformdirs, filelock, virtualenv Successfully installed distlib-0.3.8 filelock-3.14.0 platformdirs-4.2.2 virtualenv-20.26.2 + python -m virtualenv --no-download /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/venv-test-arm64 created virtual environment PyPy3.8.16.final.0-64 in 429ms creator PyPy3Posix(dest=/private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/venv-test-arm64, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/alenkafrim/Library/Application Support/virtualenv) added seed packages: pip==24.0, setuptools==69.5.1, wheel==0.43.0 activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator + which python /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/venv-test-arm64/bin/python + pip install /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/repaired_wheel/nanoarrow-0.5.0.dev0-pp38-pypy38_pp73-macosx_11_0_arm64.whl Processing /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/repaired_wheel/nanoarrow-0.5.0.dev0-pp38-pypy38_pp73-macosx_11_0_arm64.whl Installing collected packages: nanoarrow Successfully installed nanoarrow-0.5.0.dev0 + pip install pytest Collecting pytest Using cached pytest-8.2.1-py3-none-any.whl.metadata (7.6 kB) Collecting iniconfig (from pytest) Using cached iniconfig-2.0.0-py3-none-any.whl.metadata (2.6 kB) Collecting packaging (from pytest) Using cached packaging-24.0-py3-none-any.whl.metadata (3.2 kB) Collecting pluggy<2.0,>=1.5 (from pytest) Using cached pluggy-1.5.0-py3-none-any.whl.metadata (4.8 kB) Collecting exceptiongroup>=1.0.0rc8 (from pytest) Using cached exceptiongroup-1.2.1-py3-none-any.whl.metadata (6.6 kB) Collecting tomli>=1 (from pytest) Using cached tomli-2.0.1-py3-none-any.whl.metadata (8.9 kB) Using cached pytest-8.2.1-py3-none-any.whl (339 kB) Using cached exceptiongroup-1.2.1-py3-none-any.whl (16 kB) Using cached pluggy-1.5.0-py3-none-any.whl (20 kB) Using cached tomli-2.0.1-py3-none-any.whl (12 kB) Using cached iniconfig-2.0.0-py3-none-any.whl (5.9 kB) Using cached packaging-24.0-py3-none-any.whl (53 kB) Installing collected packages: tomli, pluggy, packaging, iniconfig, exceptiongroup, pytest Successfully installed exceptiongroup-1.2.1 iniconfig-2.0.0 packaging-24.0 pluggy-1.5.0 pytest-8.2.1 tomli-2.0.1 + /bin/sh -c 'pytest /Users/alenkafrim/repos/arrow-nanoarrow/python/tests -vv' =========================================================================================================== test session starts ============================================================================================================ platform darwin -- Python 3.8.16[pypy-7.3.11-final], pytest-8.2.1, pluggy-1.5.0 -- /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp38-macosx_arm64/venv-test-arm64/bin/pypy3 cachedir: .pytest_cache rootdir: /Users/alenkafrim/repos/arrow-nanoarrow/python configfile: pyproject.toml collected 161 items / 3 skipped ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_construct PASSED [ 0%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_alias_constructor PASSED [ 1%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_from_chunks PASSED [ 1%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_from_chunks_validate PASSED [ 2%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_empty PASSED [ 3%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_contiguous PASSED [ 3%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_chunked PASSED [ 4%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_children PASSED [ 4%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_scalar_to_array PASSED [ 5%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_scalar_repr PASSED [ 6%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_scalar_repr_long SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 6%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_repr PASSED [ 7%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_wide_array_repr PASSED [ 8%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_repr_long SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 8%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_inspect PASSED [ 9%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_iter PASSED [ 9%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_read_all PASSED [ 10%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_read_next PASSED [ 11%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_close PASSED [ 11%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_context_manager PASSED [ 12%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_from_readable PASSED [ 13%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_from_path PASSED [ 13%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_from_url PASSED [ 14%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_c_array PASSED [ 14%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_capsule_protocol PASSED [ 15%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_old_pyarrow SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 16%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_bare_capsule PASSED [ 16%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_type_not_supported PASSED [ 17%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_slice PASSED [ 18%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_slice_errors PASSED [ 18%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_shallow_copy SKIPPED (Reference counting/garbage collection is non-deterministic on PyPy) [ 19%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_builder_init PASSED [ 19%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_uint8 PASSED [ 20%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_string PASSED [ 21%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_fixed_size_binary PASSED [ 21%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_numpy SKIPPED (could not import 'numpy': No module named 'numpy') [ 22%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_empty PASSED [ 22%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_string PASSED [ 23%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_bytes SKIPPED (could not import 'numpy': No module named 'numpy') [ 24%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_non_empty_nullable_without_nulls PASSED [ 24%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_non_empty_non_nullable PASSED [ 25%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_int_with_nulls PASSED [ 26%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_float_with_nulls PASSED [ 26%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_bool_with_nulls PASSED [ 27%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_fixed_size_binary_with_nulls PASSED [ 27%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_day_time_interval_with_nulls PASSED [ 28%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_month_day_nano_interval_with_nulls PASSED [ 29%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_error PASSED [ 29%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers PASSED [ 30%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers_null_count PASSED [ 31%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers_recursive PASSED [ 31%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers_validation PASSED [ 32%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_c_array_stream PASSED [ 32%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_capsule_protocol PASSED [ 33%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_old_pyarrow SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 34%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_bare_capsule PASSED [ 34%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_c_array_fallback PASSED [ 35%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_error PASSED [ 36%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_array_stream_from_arrays_schema PASSED [ 36%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_array_stream_from_arrays PASSED [ 37%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_array_stream_from_arrays_validate PASSED [ 37%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_buffer_invalid PASSED [ 38%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_constructor PASSED [ 39%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_unsupported_format PASSED [ 39%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_empty PASSED [ 40%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_pybuffer PASSED [ 40%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_unsupported_type PASSED [ 41%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_missing_requested_schema PASSED [ 42%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_pybuffer_with_schema PASSED [ 42%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_integer PASSED [ 43%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_numpy_c_buffer_numeric SKIPPED (could not import 'numpy': No module named 'numpy') [ 44%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_float PASSED [ 44%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_string PASSED [ 45%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_fixed_size_binary PASSED [ 45%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_builder PASSED [ 46%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_builder_buffer_protocol SKIPPED (CBufferBuilder buffer release is non-deterministic on PyPy) [ 47%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_iterable PASSED [ 47%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_fixed_size_binary_iterable PASSED [ 48%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_day_time_iterable PASSED [ 49%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_month_day_nano_iterable PASSED [ 49%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_decimal128_iterable PASSED [ 50%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_decimal256_iterable PASSED [ 50%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_bitmap_from_iterable PASSED [ 51%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_bool_ PASSED [ 52%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_bool_unpack PASSED [ 52%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_non_bool PASSED [ 53%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_copy PASSED [ 54%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_basic PASSED [ 54%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_dictionary SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 55%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_schema_metadata PASSED [ 55%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_view PASSED [ 56%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_view_extra_params SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 57%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_metadata PASSED [ 57%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_equals PASSED [ 58%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_assert_type_equal PASSED [ 59%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_modify PASSED [ 59%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_modify_children PASSED [ 60%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_modify_dictionary PASSED [ 60%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_basic PASSED [ 61%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_fixed_size PASSED [ 62%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_datetime PASSED [ 62%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_decimal PASSED [ 63%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_non_nullable PASSED [ 63%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_layout_accessors PASSED [ 64%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_device.py::test_cpu_device PASSED [ 65%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_device.py::test_c_device_array PASSED [ 65%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_device.py::test_c_device_array_protocol PASSED [ 66%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_example PASSED [ 67%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_from_readable PASSED [ 67%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_from_path PASSED [ 68%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_from_url PASSED [ 68%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_python_exception_on_read PASSED [ 69%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_error_on_read PASSED [ 70%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_warnings PASSED [ 70%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_array_view_iterator PASSED [ 71%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_primitive PASSED [ 72%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_primitive PASSED [ 72%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_string PASSED [ 73%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_string PASSED [ 73%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_binary PASSED [ 74%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_binary PASSED [ 75%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iter_tuples PASSED [ 75%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iter_tuples_nullable PASSED [ 76%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iter_tuples_errors PASSED [ 77%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_struct PASSED [ 77%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_struct PASSED [ 78%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 78%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 79%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_fixed_size_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 80%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_fixed_size_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 80%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_dictionary SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 81%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_dictionary SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 81%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_decimal SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 82%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_date SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 83%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_time SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 83%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_time_invalid PASSED [ 84%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_timestamp SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 85%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_timestamp_tz SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 85%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_lossy_timestamp PASSED [ 86%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_get_tzinfo SKIPPED (could not import 'zoneinfo': No module named 'zoneinfo') [ 86%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_duration SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 87%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_extension PASSED [ 88%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_type_schema_protocol PASSED [ 88%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_time_unit_create PASSED [ 89%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_create_c_schema PASSED [ 90%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_create_no_params PASSED [ 90%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_simple PASSED [ 91%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_fixed_size_binary PASSED [ 91%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_time PASSED [ 92%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_timestamp PASSED [ 93%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_duration PASSED [ 93%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_decimal PASSED [ 94%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_struct PASSED [ 95%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_list_ PASSED [ 95%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_large_list PASSED [ 96%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_fixed_size_list PASSED [ 96%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_dictionary PASSED [ 97%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_extension PASSED [ 98%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_alias_constructor PASSED [ 98%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_version.py::test_version PASSED [ 99%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_version.py::test_c_version PASSED [100%] ===================================================================================================== 137 passed, 27 skipped in 1.00s ====================================================================================================== ✓ 7.24s ✓ pp38-macosx_arm64 finished in 39.32s Building pp39-macosx_arm64 wheel PyPy 3.9 macOS arm64 - Apple Silicon Installing Python pp39... ✓ 0.00s Setting up build environment... + /Users/alenkafrim/envs/nanoarrow-dev/bin/python -sS /Users/alenkafrim/Library/Caches/cibuildwheel/virtualenv-20.26.2.pyz --activators= --no-periodic-update --pip=24.0 --no-setuptools --no-wheel --symlink-app-data --python /Users/alenkafrim/Library/Caches/cibuildwheel/pypy3.9-v7.3.16-macos_arm64/bin/pypy3 /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/build/venv created virtual environment PyPy3.9.19.final.0-64 in 38ms creator PyPy3Posix(dest=/private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/build/venv, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=24.0, via=symlink, app_data_dir=/Users/alenkafrim/Library/Application Support/virtualenv) added seed packages: pip==24.0 + python -m pip install --upgrade pip -c /Users/alenkafrim/envs/nanoarrow-dev/lib/python3.12/site-packages/cibuildwheel/resources/constraints-python39.txt Requirement already satisfied: pip in ./lib/pypy3.9/site-packages (24.0) + which pip /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/build/venv/bin/pip + pip --version pip 24.0 from /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/build/venv/lib/pypy3.9/site-packages/pip (python 3.9) + which pip + which python /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/build/venv/bin/python + python --version Python 3.9.19 (a2113ea87262, Apr 21 2024, 05:41:07) [PyPy 7.3.16 with GCC Apple LLVM 15.0.0 (clang-1500.1.0.2.5)] + which python ✓ 2.02s Installing build tools... + pip install --upgrade delocate -c /Users/alenkafrim/envs/nanoarrow-dev/lib/python3.12/site-packages/cibuildwheel/resources/constraints-python39.txt Collecting delocate Using cached delocate-0.11.0-py3-none-any.whl.metadata (14 kB) Collecting packaging>=20.9 (from delocate) Using cached packaging-24.0-py3-none-any.whl.metadata (3.2 kB) Collecting typing-extensions (from delocate) Using cached typing_extensions-4.11.0-py3-none-any.whl.metadata (3.0 kB) Collecting macholib (from delocate) Using cached macholib-1.16.3-py2.py3-none-any.whl.metadata (11 kB) Collecting altgraph>=0.17 (from macholib->delocate) Using cached altgraph-0.17.4-py2.py3-none-any.whl.metadata (7.3 kB) Using cached delocate-0.11.0-py3-none-any.whl (228 kB) Using cached packaging-24.0-py3-none-any.whl (53 kB) Using cached macholib-1.16.3-py2.py3-none-any.whl (38 kB) Using cached typing_extensions-4.11.0-py3-none-any.whl (34 kB) Using cached altgraph-0.17.4-py2.py3-none-any.whl (21 kB) Installing collected packages: altgraph, typing-extensions, packaging, macholib, delocate Successfully installed altgraph-0.17.4 delocate-0.11.0 macholib-1.16.3 packaging-24.0 typing-extensions-4.11.0 ✓ 1.29s Building wheel... + python -m pip freeze --all + python -m pip wheel /Users/alenkafrim/repos/arrow-nanoarrow/python --wheel-dir=/private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/built_wheel --no-deps Processing ./python Installing build dependencies ... done Getting requirements to build wheel ... done Installing backend dependencies ... done Preparing metadata (pyproject.toml) ... done Building wheels for collected packages: nanoarrow Building wheel for nanoarrow (pyproject.toml) ... done Created wheel for nanoarrow: filename=nanoarrow-0.5.0.dev0-pp39-pypy39_pp73-macosx_11_0_arm64.whl size=369754 sha256=0ffd730dcc10b4f684bacb143da49887e26f72a95827c34d92d23389b0c64424 Stored in directory: /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/pip-ephem-wheel-cache-e08nqz_l/wheels/37/11/c1/8b661058f1e4e7a35eb2772be40771f74a0228ab0694576ed7 Successfully built nanoarrow ✓ 26.62s Repairing wheel... + delocate-wheel --require-archs arm64 -w /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/repaired_wheel -v /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/built_wheel/nanoarrow-0.5.0.dev0-pp39-pypy39_pp73-macosx_11_0_arm64.whl Fixing: /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/built_wheel/nanoarrow-0.5.0.dev0-pp39-pypy39_pp73-macosx_11_0_arm64.whl ✓ 0.74s + python -sSc 'import platform; print(platform.machine())' Testing wheel... + pip install virtualenv -c /Users/alenkafrim/envs/nanoarrow-dev/lib/python3.12/site-packages/cibuildwheel/resources/constraints-python39.txt Collecting virtualenv Using cached virtualenv-20.26.2-py3-none-any.whl.metadata (4.4 kB) Collecting distlib<1,>=0.3.7 (from virtualenv) Using cached distlib-0.3.8-py2.py3-none-any.whl.metadata (5.1 kB) Collecting filelock<4,>=3.12.2 (from virtualenv) Using cached filelock-3.14.0-py3-none-any.whl.metadata (2.8 kB) Collecting platformdirs<5,>=3.9.1 (from virtualenv) Using cached platformdirs-4.2.2-py3-none-any.whl.metadata (11 kB) Using cached virtualenv-20.26.2-py3-none-any.whl (3.9 MB) Using cached distlib-0.3.8-py2.py3-none-any.whl (468 kB) Using cached filelock-3.14.0-py3-none-any.whl (12 kB) Using cached platformdirs-4.2.2-py3-none-any.whl (18 kB) Installing collected packages: distlib, platformdirs, filelock, virtualenv Successfully installed distlib-0.3.8 filelock-3.14.0 platformdirs-4.2.2 virtualenv-20.26.2 + python -m virtualenv --no-download /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/venv-test-arm64 created virtual environment PyPy3.9.19.final.0-64 in 560ms creator PyPy3Posix(dest=/private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/venv-test-arm64, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/alenkafrim/Library/Application Support/virtualenv) added seed packages: pip==24.0, setuptools==69.5.1, wheel==0.43.0 activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator + which python /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/venv-test-arm64/bin/python + pip install /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/repaired_wheel/nanoarrow-0.5.0.dev0-pp39-pypy39_pp73-macosx_11_0_arm64.whl Processing /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/repaired_wheel/nanoarrow-0.5.0.dev0-pp39-pypy39_pp73-macosx_11_0_arm64.whl Installing collected packages: nanoarrow Successfully installed nanoarrow-0.5.0.dev0 + pip install pytest Collecting pytest Using cached pytest-8.2.1-py3-none-any.whl.metadata (7.6 kB) Collecting iniconfig (from pytest) Using cached iniconfig-2.0.0-py3-none-any.whl.metadata (2.6 kB) Collecting packaging (from pytest) Using cached packaging-24.0-py3-none-any.whl.metadata (3.2 kB) Collecting pluggy<2.0,>=1.5 (from pytest) Using cached pluggy-1.5.0-py3-none-any.whl.metadata (4.8 kB) Collecting exceptiongroup>=1.0.0rc8 (from pytest) Using cached exceptiongroup-1.2.1-py3-none-any.whl.metadata (6.6 kB) Collecting tomli>=1 (from pytest) Using cached tomli-2.0.1-py3-none-any.whl.metadata (8.9 kB) Using cached pytest-8.2.1-py3-none-any.whl (339 kB) Using cached exceptiongroup-1.2.1-py3-none-any.whl (16 kB) Using cached pluggy-1.5.0-py3-none-any.whl (20 kB) Using cached tomli-2.0.1-py3-none-any.whl (12 kB) Using cached iniconfig-2.0.0-py3-none-any.whl (5.9 kB) Using cached packaging-24.0-py3-none-any.whl (53 kB) Installing collected packages: tomli, pluggy, packaging, iniconfig, exceptiongroup, pytest Successfully installed exceptiongroup-1.2.1 iniconfig-2.0.0 packaging-24.0 pluggy-1.5.0 pytest-8.2.1 tomli-2.0.1 + /bin/sh -c 'pytest /Users/alenkafrim/repos/arrow-nanoarrow/python/tests -vv' =========================================================================================================== test session starts ============================================================================================================ platform darwin -- Python 3.9.19[pypy-7.3.16-final], pytest-8.2.1, pluggy-1.5.0 -- /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp39-macosx_arm64/venv-test-arm64/bin/pypy3 cachedir: .pytest_cache rootdir: /Users/alenkafrim/repos/arrow-nanoarrow/python configfile: pyproject.toml collected 161 items / 3 skipped ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_construct PASSED [ 0%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_alias_constructor PASSED [ 1%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_from_chunks PASSED [ 1%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_from_chunks_validate PASSED [ 2%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_empty PASSED [ 3%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_contiguous PASSED [ 3%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_chunked PASSED [ 4%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_children PASSED [ 4%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_scalar_to_array PASSED [ 5%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_scalar_repr PASSED [ 6%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_scalar_repr_long SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 6%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_repr PASSED [ 7%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_wide_array_repr PASSED [ 8%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_repr_long SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 8%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_inspect PASSED [ 9%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_iter PASSED [ 9%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_read_all PASSED [ 10%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_read_next PASSED [ 11%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_close PASSED [ 11%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_context_manager PASSED [ 12%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_from_readable PASSED [ 13%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_from_path PASSED [ 13%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_from_url PASSED [ 14%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_c_array PASSED [ 14%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_capsule_protocol PASSED [ 15%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_old_pyarrow SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 16%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_bare_capsule PASSED [ 16%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_type_not_supported PASSED [ 17%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_slice PASSED [ 18%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_slice_errors PASSED [ 18%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_shallow_copy SKIPPED (Reference counting/garbage collection is non-deterministic on PyPy) [ 19%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_builder_init PASSED [ 19%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_uint8 PASSED [ 20%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_string PASSED [ 21%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_fixed_size_binary PASSED [ 21%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_numpy SKIPPED (could not import 'numpy': No module named 'numpy') [ 22%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_empty PASSED [ 22%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_string PASSED [ 23%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_bytes SKIPPED (could not import 'numpy': No module named 'numpy') [ 24%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_non_empty_nullable_without_nulls PASSED [ 24%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_non_empty_non_nullable PASSED [ 25%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_int_with_nulls PASSED [ 26%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_float_with_nulls PASSED [ 26%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_bool_with_nulls PASSED [ 27%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_fixed_size_binary_with_nulls PASSED [ 27%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_day_time_interval_with_nulls PASSED [ 28%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_month_day_nano_interval_with_nulls PASSED [ 29%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_error PASSED [ 29%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers PASSED [ 30%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers_null_count PASSED [ 31%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers_recursive PASSED [ 31%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers_validation PASSED [ 32%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_c_array_stream PASSED [ 32%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_capsule_protocol PASSED [ 33%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_old_pyarrow SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 34%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_bare_capsule PASSED [ 34%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_c_array_fallback PASSED [ 35%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_error PASSED [ 36%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_array_stream_from_arrays_schema PASSED [ 36%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_array_stream_from_arrays PASSED [ 37%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_array_stream_from_arrays_validate PASSED [ 37%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_buffer_invalid PASSED [ 38%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_constructor PASSED [ 39%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_unsupported_format PASSED [ 39%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_empty PASSED [ 40%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_pybuffer PASSED [ 40%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_unsupported_type PASSED [ 41%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_missing_requested_schema PASSED [ 42%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_pybuffer_with_schema PASSED [ 42%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_integer PASSED [ 43%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_numpy_c_buffer_numeric SKIPPED (could not import 'numpy': No module named 'numpy') [ 44%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_float PASSED [ 44%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_string PASSED [ 45%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_fixed_size_binary PASSED [ 45%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_builder PASSED [ 46%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_builder_buffer_protocol SKIPPED (CBufferBuilder buffer release is non-deterministic on PyPy) [ 47%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_iterable PASSED [ 47%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_fixed_size_binary_iterable PASSED [ 48%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_day_time_iterable PASSED [ 49%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_month_day_nano_iterable PASSED [ 49%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_decimal128_iterable PASSED [ 50%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_decimal256_iterable PASSED [ 50%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_bitmap_from_iterable PASSED [ 51%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_bool_ PASSED [ 52%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_bool_unpack PASSED [ 52%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_non_bool PASSED [ 53%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_copy PASSED [ 54%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_basic PASSED [ 54%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_dictionary SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 55%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_schema_metadata PASSED [ 55%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_view PASSED [ 56%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_view_extra_params SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 57%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_metadata PASSED [ 57%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_equals PASSED [ 58%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_assert_type_equal PASSED [ 59%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_modify PASSED [ 59%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_modify_children PASSED [ 60%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_modify_dictionary PASSED [ 60%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_basic PASSED [ 61%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_fixed_size PASSED [ 62%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_datetime PASSED [ 62%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_decimal PASSED [ 63%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_non_nullable PASSED [ 63%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_layout_accessors PASSED [ 64%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_device.py::test_cpu_device PASSED [ 65%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_device.py::test_c_device_array PASSED [ 65%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_device.py::test_c_device_array_protocol PASSED [ 66%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_example PASSED [ 67%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_from_readable PASSED [ 67%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_from_path PASSED [ 68%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_from_url PASSED [ 68%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_python_exception_on_read PASSED [ 69%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_error_on_read PASSED [ 70%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_warnings PASSED [ 70%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_array_view_iterator PASSED [ 71%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_primitive PASSED [ 72%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_primitive PASSED [ 72%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_string PASSED [ 73%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_string PASSED [ 73%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_binary PASSED [ 74%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_binary PASSED [ 75%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iter_tuples PASSED [ 75%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iter_tuples_nullable PASSED [ 76%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iter_tuples_errors PASSED [ 77%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_struct PASSED [ 77%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_struct PASSED [ 78%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 78%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 79%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_fixed_size_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 80%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_fixed_size_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 80%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_dictionary SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 81%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_dictionary SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 81%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_decimal SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 82%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_date SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 83%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_time SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 83%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_time_invalid PASSED [ 84%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_timestamp SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 85%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_timestamp_tz SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 85%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_lossy_timestamp PASSED [ 86%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_get_tzinfo SKIPPED (could not import 'dateutil': No module named 'dateutil') [ 86%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_duration SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 87%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_extension PASSED [ 88%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_type_schema_protocol PASSED [ 88%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_time_unit_create PASSED [ 89%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_create_c_schema PASSED [ 90%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_create_no_params PASSED [ 90%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_simple PASSED [ 91%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_fixed_size_binary PASSED [ 91%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_time PASSED [ 92%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_timestamp PASSED [ 93%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_duration PASSED [ 93%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_decimal PASSED [ 94%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_struct PASSED [ 95%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_list_ PASSED [ 95%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_large_list PASSED [ 96%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_fixed_size_list PASSED [ 96%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_dictionary PASSED [ 97%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_extension PASSED [ 98%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_alias_constructor PASSED [ 98%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_version.py::test_version PASSED [ 99%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_version.py::test_c_version PASSED [100%] ===================================================================================================== 137 passed, 27 skipped in 1.04s ====================================================================================================== ✓ 7.03s ✓ pp39-macosx_arm64 finished in 37.75s Building pp310-macosx_arm64 wheel PyPy 3.10 macOS arm64 - Apple Silicon Installing Python pp310... ✓ 0.00s Setting up build environment... + /Users/alenkafrim/envs/nanoarrow-dev/bin/python -sS /Users/alenkafrim/Library/Caches/cibuildwheel/virtualenv-20.26.2.pyz --activators= --no-periodic-update --pip=24.0 --no-setuptools --no-wheel --symlink-app-data --python /Users/alenkafrim/Library/Caches/cibuildwheel/pypy3.10-v7.3.16-macos_arm64/bin/pypy3 /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/build/venv created virtual environment PyPy3.10.14.final.0-64 in 36ms creator PyPy3Posix(dest=/private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/build/venv, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=24.0, via=symlink, app_data_dir=/Users/alenkafrim/Library/Application Support/virtualenv) added seed packages: pip==24.0 + python -m pip install --upgrade pip -c /Users/alenkafrim/envs/nanoarrow-dev/lib/python3.12/site-packages/cibuildwheel/resources/constraints-python310.txt Requirement already satisfied: pip in ./lib/pypy3.10/site-packages (24.0) + which pip /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/build/venv/bin/pip + pip --version pip 24.0 from /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/build/venv/lib/pypy3.10/site-packages/pip (python 3.10) + which pip + which python /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/build/venv/bin/python + python --version Python 3.10.14 (75b3de9d9035, Apr 21 2024, 10:55:50) [PyPy 7.3.16 with GCC Apple LLVM 15.0.0 (clang-1500.1.0.2.5)] + which python ✓ 1.89s Installing build tools... + pip install --upgrade delocate -c /Users/alenkafrim/envs/nanoarrow-dev/lib/python3.12/site-packages/cibuildwheel/resources/constraints-python310.txt Collecting delocate Using cached delocate-0.11.0-py3-none-any.whl.metadata (14 kB) Collecting packaging>=20.9 (from delocate) Using cached packaging-24.0-py3-none-any.whl.metadata (3.2 kB) Collecting typing-extensions (from delocate) Using cached typing_extensions-4.11.0-py3-none-any.whl.metadata (3.0 kB) Collecting macholib (from delocate) Using cached macholib-1.16.3-py2.py3-none-any.whl.metadata (11 kB) Collecting altgraph>=0.17 (from macholib->delocate) Using cached altgraph-0.17.4-py2.py3-none-any.whl.metadata (7.3 kB) Using cached delocate-0.11.0-py3-none-any.whl (228 kB) Using cached packaging-24.0-py3-none-any.whl (53 kB) Using cached macholib-1.16.3-py2.py3-none-any.whl (38 kB) Using cached typing_extensions-4.11.0-py3-none-any.whl (34 kB) Using cached altgraph-0.17.4-py2.py3-none-any.whl (21 kB) Installing collected packages: altgraph, typing-extensions, packaging, macholib, delocate Successfully installed altgraph-0.17.4 delocate-0.11.0 macholib-1.16.3 packaging-24.0 typing-extensions-4.11.0 ✓ 1.33s Building wheel... + python -m pip freeze --all + python -m pip wheel /Users/alenkafrim/repos/arrow-nanoarrow/python --wheel-dir=/private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/built_wheel --no-deps Processing ./python Installing build dependencies ... done Getting requirements to build wheel ... done Installing backend dependencies ... done Preparing metadata (pyproject.toml) ... done Building wheels for collected packages: nanoarrow Building wheel for nanoarrow (pyproject.toml) ... done Created wheel for nanoarrow: filename=nanoarrow-0.5.0.dev0-pp310-pypy310_pp73-macosx_11_0_arm64.whl size=370451 sha256=5dbe7b013661c3f05d3e64e8a6e0dde7c75f5401f35d90c44f0562c4078ac52a Stored in directory: /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/pip-ephem-wheel-cache-_vw6i41b/wheels/d2/97/06/4ed6c8e1323b9b29e8acf668cd0b9bb6449c7ac7fa52a330ac Successfully built nanoarrow ✓ 27.51s Repairing wheel... + delocate-wheel --require-archs arm64 -w /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/repaired_wheel -v /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/built_wheel/nanoarrow-0.5.0.dev0-pp310-pypy310_pp73-macosx_11_0_arm64.whl Fixing: /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/built_wheel/nanoarrow-0.5.0.dev0-pp310-pypy310_pp73-macosx_11_0_arm64.whl ✓ 0.64s + python -sSc 'import platform; print(platform.machine())' Testing wheel... + pip install virtualenv -c /Users/alenkafrim/envs/nanoarrow-dev/lib/python3.12/site-packages/cibuildwheel/resources/constraints-python310.txt Collecting virtualenv Using cached virtualenv-20.26.2-py3-none-any.whl.metadata (4.4 kB) Collecting distlib<1,>=0.3.7 (from virtualenv) Using cached distlib-0.3.8-py2.py3-none-any.whl.metadata (5.1 kB) Collecting filelock<4,>=3.12.2 (from virtualenv) Using cached filelock-3.14.0-py3-none-any.whl.metadata (2.8 kB) Collecting platformdirs<5,>=3.9.1 (from virtualenv) Using cached platformdirs-4.2.2-py3-none-any.whl.metadata (11 kB) Using cached virtualenv-20.26.2-py3-none-any.whl (3.9 MB) Using cached distlib-0.3.8-py2.py3-none-any.whl (468 kB) Using cached filelock-3.14.0-py3-none-any.whl (12 kB) Using cached platformdirs-4.2.2-py3-none-any.whl (18 kB) Installing collected packages: distlib, platformdirs, filelock, virtualenv Successfully installed distlib-0.3.8 filelock-3.14.0 platformdirs-4.2.2 virtualenv-20.26.2 + python -m virtualenv --no-download /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/venv-test-arm64 created virtual environment PyPy3.10.14.final.0-64 in 570ms creator PyPy3Posix(dest=/private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/venv-test-arm64, clear=False, no_vcs_ignore=False, global=False) seeder FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=/Users/alenkafrim/Library/Application Support/virtualenv) added seed packages: pip==24.0, setuptools==69.5.1, wheel==0.43.0 activators BashActivator,CShellActivator,FishActivator,NushellActivator,PowerShellActivator,PythonActivator + which python /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/venv-test-arm64/bin/python + pip install /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/repaired_wheel/nanoarrow-0.5.0.dev0-pp310-pypy310_pp73-macosx_11_0_arm64.whl Processing /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/repaired_wheel/nanoarrow-0.5.0.dev0-pp310-pypy310_pp73-macosx_11_0_arm64.whl Installing collected packages: nanoarrow Successfully installed nanoarrow-0.5.0.dev0 + pip install pytest Collecting pytest Using cached pytest-8.2.1-py3-none-any.whl.metadata (7.6 kB) Collecting iniconfig (from pytest) Using cached iniconfig-2.0.0-py3-none-any.whl.metadata (2.6 kB) Collecting packaging (from pytest) Using cached packaging-24.0-py3-none-any.whl.metadata (3.2 kB) Collecting pluggy<2.0,>=1.5 (from pytest) Using cached pluggy-1.5.0-py3-none-any.whl.metadata (4.8 kB) Collecting exceptiongroup>=1.0.0rc8 (from pytest) Using cached exceptiongroup-1.2.1-py3-none-any.whl.metadata (6.6 kB) Collecting tomli>=1 (from pytest) Using cached tomli-2.0.1-py3-none-any.whl.metadata (8.9 kB) Using cached pytest-8.2.1-py3-none-any.whl (339 kB) Using cached exceptiongroup-1.2.1-py3-none-any.whl (16 kB) Using cached pluggy-1.5.0-py3-none-any.whl (20 kB) Using cached tomli-2.0.1-py3-none-any.whl (12 kB) Using cached iniconfig-2.0.0-py3-none-any.whl (5.9 kB) Using cached packaging-24.0-py3-none-any.whl (53 kB) Installing collected packages: tomli, pluggy, packaging, iniconfig, exceptiongroup, pytest Successfully installed exceptiongroup-1.2.1 iniconfig-2.0.0 packaging-24.0 pluggy-1.5.0 pytest-8.2.1 tomli-2.0.1 + /bin/sh -c 'pytest /Users/alenkafrim/repos/arrow-nanoarrow/python/tests -vv' =========================================================================================================== test session starts ============================================================================================================ platform darwin -- Python 3.10.14[pypy-7.3.16-final], pytest-8.2.1, pluggy-1.5.0 -- /private/var/folders/gw/q7wqd4tx18n_9t4kbkd0bj1m0000gn/T/cibw-run-gbc8vccz/pp310-macosx_arm64/venv-test-arm64/bin/pypy3 cachedir: .pytest_cache rootdir: /Users/alenkafrim/repos/arrow-nanoarrow/python configfile: pyproject.toml collected 161 items / 3 skipped ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_construct PASSED [ 0%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_alias_constructor PASSED [ 1%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_from_chunks PASSED [ 1%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_from_chunks_validate PASSED [ 2%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_empty PASSED [ 3%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_contiguous PASSED [ 3%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_chunked PASSED [ 4%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_children PASSED [ 4%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_scalar_to_array PASSED [ 5%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_scalar_repr PASSED [ 6%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_scalar_repr_long SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 6%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_repr PASSED [ 7%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_wide_array_repr PASSED [ 8%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_repr_long SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 8%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array.py::test_array_inspect PASSED [ 9%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_iter PASSED [ 9%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_read_all PASSED [ 10%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_read_next PASSED [ 11%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_close PASSED [ 11%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_context_manager PASSED [ 12%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_from_readable PASSED [ 13%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_from_path PASSED [ 13%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_array_stream.py::test_array_stream_from_url PASSED [ 14%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_c_array PASSED [ 14%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_capsule_protocol PASSED [ 15%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_old_pyarrow SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 16%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_bare_capsule PASSED [ 16%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_type_not_supported PASSED [ 17%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_slice PASSED [ 18%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_slice_errors PASSED [ 18%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_shallow_copy SKIPPED (Reference counting/garbage collection is non-deterministic on PyPy) [ 19%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_builder_init PASSED [ 19%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_uint8 PASSED [ 20%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_string PASSED [ 21%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_fixed_size_binary PASSED [ 21%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_pybuffer_numpy SKIPPED (could not import 'numpy': No module named 'numpy') [ 22%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_empty PASSED [ 22%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_string PASSED [ 23%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_bytes SKIPPED (could not import 'numpy': No module named 'numpy') [ 24%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_non_empty_nullable_without_nulls PASSED [ 24%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_non_empty_non_nullable PASSED [ 25%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_int_with_nulls PASSED [ 26%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_float_with_nulls PASSED [ 26%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_bool_with_nulls PASSED [ 27%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_fixed_size_binary_with_nulls PASSED [ 27%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_day_time_interval_with_nulls PASSED [ 28%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_month_day_nano_interval_with_nulls PASSED [ 29%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_iterable_error PASSED [ 29%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers PASSED [ 30%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers_null_count PASSED [ 31%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers_recursive PASSED [ 31%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array.py::test_c_array_from_buffers_validation PASSED [ 32%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_c_array_stream PASSED [ 32%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_capsule_protocol PASSED [ 33%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_old_pyarrow SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 34%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_bare_capsule PASSED [ 34%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_from_c_array_fallback PASSED [ 35%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_c_array_stream_error PASSED [ 36%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_array_stream_from_arrays_schema PASSED [ 36%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_array_stream_from_arrays PASSED [ 37%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_array_stream.py::test_array_stream_from_arrays_validate PASSED [ 37%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_buffer_invalid PASSED [ 38%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_constructor PASSED [ 39%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_unsupported_format PASSED [ 39%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_empty PASSED [ 40%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_pybuffer PASSED [ 40%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_unsupported_type PASSED [ 41%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_missing_requested_schema PASSED [ 42%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_pybuffer_with_schema PASSED [ 42%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_integer PASSED [ 43%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_numpy_c_buffer_numeric SKIPPED (could not import 'numpy': No module named 'numpy') [ 44%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_float PASSED [ 44%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_string PASSED [ 45%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_fixed_size_binary PASSED [ 45%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_builder PASSED [ 46%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_builder_buffer_protocol SKIPPED (CBufferBuilder buffer release is non-deterministic on PyPy) [ 47%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_iterable PASSED [ 47%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_fixed_size_binary_iterable PASSED [ 48%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_day_time_iterable PASSED [ 49%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_month_day_nano_iterable PASSED [ 49%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_decimal128_iterable PASSED [ 50%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_from_decimal256_iterable PASSED [ 50%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer.py::test_c_buffer_bitmap_from_iterable PASSED [ 51%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_bool_ PASSED [ 52%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_bool_unpack PASSED [ 52%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_non_bool PASSED [ 53%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_buffer_view.py::test_buffer_view_copy PASSED [ 54%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_basic PASSED [ 54%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_dictionary SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 55%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_schema_metadata PASSED [ 55%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_view PASSED [ 56%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_view_extra_params SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 57%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_metadata PASSED [ 57%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_equals PASSED [ 58%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_assert_type_equal PASSED [ 59%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_modify PASSED [ 59%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_modify_children PASSED [ 60%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema.py::test_c_schema_modify_dictionary PASSED [ 60%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_basic PASSED [ 61%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_fixed_size PASSED [ 62%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_datetime PASSED [ 62%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_decimal PASSED [ 63%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_accessors_non_nullable PASSED [ 63%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_c_schema_view.py::test_schema_view_layout_accessors PASSED [ 64%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_device.py::test_cpu_device PASSED [ 65%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_device.py::test_c_device_array PASSED [ 65%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_device.py::test_c_device_array_protocol PASSED [ 66%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_example PASSED [ 67%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_from_readable PASSED [ 67%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_from_path PASSED [ 68%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_from_url PASSED [ 68%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_python_exception_on_read PASSED [ 69%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_ipc.py::test_ipc_stream_error_on_read PASSED [ 70%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_warnings PASSED [ 70%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_array_view_iterator PASSED [ 71%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_primitive PASSED [ 72%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_primitive PASSED [ 72%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_string PASSED [ 73%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_string PASSED [ 73%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_binary PASSED [ 74%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_binary PASSED [ 75%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iter_tuples PASSED [ 75%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iter_tuples_nullable PASSED [ 76%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iter_tuples_errors PASSED [ 77%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_struct PASSED [ 77%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_struct PASSED [ 78%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 78%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 79%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_fixed_size_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 80%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_fixed_size_list SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 80%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_dictionary SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 81%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_nullable_dictionary SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 81%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_decimal SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 82%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_date SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 83%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_time SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 83%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_time_invalid PASSED [ 84%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_timestamp SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 85%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_timestamp_tz SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 85%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_lossy_timestamp PASSED [ 86%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_get_tzinfo SKIPPED (could not import 'dateutil': No module named 'dateutil') [ 86%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_duration SKIPPED (could not import 'pyarrow': No module named 'pyarrow') [ 87%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_iterator.py::test_iterator_extension PASSED [ 88%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_type_schema_protocol PASSED [ 88%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_time_unit_create PASSED [ 89%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_create_c_schema PASSED [ 90%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_create_no_params PASSED [ 90%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_simple PASSED [ 91%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_fixed_size_binary PASSED [ 91%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_time PASSED [ 92%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_timestamp PASSED [ 93%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_duration PASSED [ 93%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_decimal PASSED [ 94%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_struct PASSED [ 95%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_list_ PASSED [ 95%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_large_list PASSED [ 96%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_fixed_size_list PASSED [ 96%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_dictionary PASSED [ 97%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_extension PASSED [ 98%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_schema.py::test_schema_alias_constructor PASSED [ 98%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_version.py::test_version PASSED [ 99%] ../../../../../../../../../Users/alenkafrim/repos/arrow-nanoarrow/python/tests/test_version.py::test_c_version PASSED [100%] ===================================================================================================== 137 passed, 27 skipped in 1.06s ====================================================================================================== ✓ 7.44s ✓ pp310-macosx_arm64 finished in 38.87s ```