# Contributor: Duncan Bellamy # Maintainer: Duncan Bellamy # based on arch linux PKGBUILD pkgname=py3-apache-arrow pkgver=6.0.1 pkgrel=0 pkgdesc="multi-language toolbox for accelerated data interchange and in-memory processing" url="https://arrow.apache.org/" arch="all !riscv64" # missing glog-dev license="Apache-2.0" makedepends=" apache-arrow-dev bzip2-dev cython gtest-dev python3-dev py3-setuptools py3-setuptools_scm py3-numpy-dev re2-dev snappy-dev " checkdepends=" py3-pytest py3-cffi py3-hypothesis py3-pandas py3-pytest-lazy-fixture " subpackages="$pkgname-dev" source="https://downloads.apache.org/arrow/arrow-$pkgver/apache-arrow-$pkgver.tar.gz" builddir="$srcdir/apache-arrow-$pkgver" # s390x segaults when testing case "$CARCH" in s390x) options="!check" ;; esac build() { cd python case "$CARCH" in armhf|armv7) _SIMD="NONE" ;; *) _SIMD="DEFAULT" ;; esac export PYARROW_WITH_PARQUET=1 python3 setup.py build_ext --inplace --extra-cmake-args="-DARROW_SIMD_LEVEL=$_SIMD" } check() { # timezone tests fail in CI # memory test is jemalloc # other tests are various platforms export PYTHONPATH=python/pyarrow/build/lib pytest python/pyarrow --deselect=pyarrow/tests/test_compute.py::test_strftime \ --deselect=pyarrow/tests/test_compute.py::test_extract_datetime_components \ --deselect=pyarrow/tests/test_compute.py::test_assume_timezone \ --deselect=pyarrow/tests/test_misc.py::test_runtime_info \ --deselect=pyarrow/tests/test_memory.py \ --deselect=pyarrow/tests/test_csv.py::TestThreadedCSVTableRead::test_cancellation \ --deselect=pyarrow/tests/parquet/test_data_types.py \ --deselect=pyarrow/tests/test_array.py::test_dictionary_to_numpy \ --deselect=pyarrow/tests/test_csv.py::TestThreadedCSVTableRead::test_cancellation \ --deselect=pyarrow/tests/test_io.py::test_python_file_large_seeks \ --deselect=pyarrow/tests/test_io.py::test_foreign_buffer \ --deselect=pyarrow/tests/test_io.py::test_memory_map_large_seeks \ --deselect=pyarrow/tests/test_pandas.py::TestConvertStructTypes::test_from_numpy_nested \ --deselect=pyarrow/tests/test_schema.py::test_schema_sizeof \ --deselect=pyarrow/tests/test_serialization.py::test_primitive_serialization \ --deselect=pyarrow/tests/test_serialization.py::test_integer_limits \ --deselect=pyarrow/tests/parquet/test_basic.py } package() { cd python python3 setup.py install --prefix=/usr --root="$pkgdir" } sha512sums=" 941a296f3c107a0ee6110bb89c5dad1828b72e79d0dcf23f099139a791f0c1058e472fb31869b53d50cfdc33932af87d2be857973e54a69ac312b0ca3713729f apache-arrow-6.0.1.tar.gz "