apache / arrow

Apache Arrow is a multi-language toolbox for accelerated data interchange and in-memory processing
https://arrow.apache.org/
Apache License 2.0
14.28k stars 3.47k forks source link

[Python] Failed to build pyarrow using python:3.10-alpine docker image #39846

Open hteeyeoh opened 7 months ago

hteeyeoh commented 7 months ago

Describe the bug, including details regarding any error messages, version, and platform.

Bumped into error when the build stage reach pyarrow building:
-- Found Python3Alt: /usr/local/bin/python
#0 678.5       CMake Error at CMakeLists.txt:268 (find_package):
#0 678.5         By not providing "FindArrow.cmake" in CMAKE_MODULE_PATH this project has
#0 678.5         asked CMake to find a package configuration file provided by "Arrow", but
#0 678.5         CMake did not find one.
#0 678.5
#0 678.5         Could not find a package configuration file provided by "Arrow" with any of
#0 678.5         the following names:
#0 678.5
#0 678.5           ArrowConfig.cmake
#0 678.5           arrow-config.cmake
#0 678.5
#0 678.5         Add the installation prefix of "Arrow" to CMAKE_PREFIX_PATH or set
#0 678.5         "Arrow_DIR" to a directory containing one of the above files.  If "Arrow"
#0 678.5         provides a separate development package or SDK, be sure it has been
#0 678.5         installed.
#0 678.5
#0 678.5
#0 678.5       -- Configuring incomplete, errors occurred!
#0 678.5       error: command '/usr/bin/cmake' failed with exit code 1
#0 678.5       [end of output]
#0 678.5
#0 678.5   note: This error originates from a subprocess, and is likely not a problem with pip.
#0 678.5   ERROR: Failed building wheel for pyarrow

Component(s)

Python

kou commented 7 months ago

Could you provide a Dockerfile that reproduces this error?

hteeyeoh commented 7 months ago

Hi @kou, below are the example of Dockerfile and requirement.txt that I have requirement.txt

Dockerfile.txt

jorisvandenbossche commented 7 months ago

PyArrow doesn't provide binary wheel packages that are compatible with Alpine Linux. That means that when doing pip install, it will try to build PyArrow from source. However, that doesn't work out of the box just using pip, as PyArrow has some non-Python build dependencies that you will need to ensure are installed (as a starter, you need to install the Arrow C++ libraries). See https://arrow.apache.org/docs/developers/python.html#building-on-linux-and-macos

hteeyeoh commented 7 months ago

hi @jorisvandenbossche, yes i did tried the steps mentioned and include in my Dockerfile, but yet it complained pushd not found error:

0 0.231 /bin/sh: pushd: not found

Dockerfile: RUN git clone https://github.com/apache/arrow.git RUN pushd arrow && git submodule update --init RUN export PARQUET_TEST_DATA="${PWD}/cpp/submodules/parquet-testing/data" && export ARROW_TEST_DATA="${PWD}/testing/data" && popd

raulcd commented 7 months ago

If pushd and/or popd are not present on your docker image you can use cd, this is not related with Arrow.

hteeyeoh commented 7 months ago

ya my bad. already figured it out. Just that followed the guide line : https://arrow.apache.org/docs/developers/python.html Get cmake error which I couldnt figure out why:


 > [build  9/11] RUN cmake -DCMAKE_INSTALL_PREFIX=$ARROW_HOME         -DCMAKE_INSTALL_LIBDIR=lib         -DCMAKE_BUILD_TYPE=Debug         -DARROW_BUILD_TESTS=ON         -DARROW_COMPUTE=ON         -DARROW_CSV=ON         -DARROW_DATASET=ON         -DARROW_FILESYSTEM=ON         -DARROW_HDFS=ON         -DARROW_JSON=ON         -DARROW_PARQUET=ON         -DARROW_WITH_BROTLI=ON         -DARROW_WITH_BZ2=ON         -DARROW_WITH_LZ4=ON         -DARROW_WITH_SNAPPY=ON         -DARROW_WITH_ZLIB=ON         -DARROW_WITH_ZSTD=ON         -DPARQUET_REQUIRE_ENCRYPTION=ON         .. && make -j4 && make install:
#0 0.259 CMake Warning:
#0 0.259   Ignoring extra path from command line:
#0 0.259
#0 0.259    ".."
#0 0.259
#0 0.259
#0 0.259 CMake Error: The source directory "/" does not appear to contain CMakeLists.txt.
#0 0.259 Specify --help for usage, or press the help button on the CMake GUI.
------
Dockerfile:15
--------------------
  14 |     RUN mkdir arrow/cpp/build && cd arrow/cpp/build
  15 | >>> RUN cmake -DCMAKE_INSTALL_PREFIX=$ARROW_HOME \
  16 | >>>         -DCMAKE_INSTALL_LIBDIR=lib \
  17 | >>>         -DCMAKE_BUILD_TYPE=Debug \
  18 | >>>         -DARROW_BUILD_TESTS=ON \
  19 | >>>         -DARROW_COMPUTE=ON \
  20 | >>>         -DARROW_CSV=ON \
  21 | >>>         -DARROW_DATASET=ON \
  22 | >>>         -DARROW_FILESYSTEM=ON \
  23 | >>>         -DARROW_HDFS=ON \
  24 | >>>         -DARROW_JSON=ON \
  25 | >>>         -DARROW_PARQUET=ON \
  26 | >>>         -DARROW_WITH_BROTLI=ON \
  27 | >>>         -DARROW_WITH_BZ2=ON \
  28 | >>>         -DARROW_WITH_LZ4=ON \
  29 | >>>         -DARROW_WITH_SNAPPY=ON \
  30 | >>>         -DARROW_WITH_ZLIB=ON \
  31 | >>>         -DARROW_WITH_ZSTD=ON \
  32 | >>>         -DPARQUET_REQUIRE_ENCRYPTION=ON \
  33 | >>>         .. && make -j4 && make install
  34 |
--------------------
ERROR: failed to solve: process "/bin/sh -c cmake -DCMAKE_INSTALL_PREFIX=$ARROW_HOME         -DCMAKE_INSTALL_LIBDIR=lib         -DCMAKE_BUILD_TYPE=Debug         -DARROW_BUILD_TESTS=ON         -DARROW_COMPUTE=ON         -DARROW_CSV=ON         -DARROW_DATASET=ON         -DARROW_FILESYSTEM=ON         -DARROW_HDFS=ON         -DARROW_JSON=ON         -DARROW_PARQUET=ON         -DARROW_WITH_BROTLI=ON         -DARROW_WITH_BZ2=ON         -DARROW_WITH_LZ4=ON         -DARROW_WITH_SNAPPY=ON         -DARROW_WITH_ZLIB=ON         -DARROW_WITH_ZSTD=ON         -DPARQUET_REQUIRE_ENCRYPTION=ON         .. && make -j4 && make install" did not complete successfully: exit code: 1
numbworks commented 1 month ago

Hello guys,

I have the same issue, but from the thread is not clear to me how to solve it.

How should I change the Dockerfile in order to make pip install pyarrow succeed?

Thank you for the help!

Dockerfile:

FROM python:3.12.4-alpine3.20

RUN pip install --upgrade pip \
    && pip install pyarrow

Output:

=> CACHED [1/2] FROM docker.io/library/python:3.12.4-alpine3.20                                                                               0.0s
 => ERROR [2/2] RUN pip install --upgrade pip     && pip install pyarrow                                                                      31.5s
------                                                                                                                                              
 > [2/2] RUN pip install --upgrade pip     && pip install pyarrow:                                                                                  
5.205 Requirement already satisfied: pip in /usr/local/lib/python3.12/site-packages (24.0)                                                          
5.431 Collecting pip                                                                                                                                
5.548   Downloading pip-24.2-py3-none-any.whl.metadata (3.6 kB)                                                                                     
5.588 Downloading pip-24.2-py3-none-any.whl (1.8 MB)                                                                                                
5.726    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 13.9 MB/s eta 0:00:00
5.897 Installing collected packages: pip
5.898   Attempting uninstall: pip
5.910     Found existing installation: pip 24.0
5.997     Uninstalling pip-24.0:
6.423       Successfully uninstalled pip-24.0
9.019 Successfully installed pip-24.2
9.020 WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
10.55 Collecting pyarrow
10.64   Downloading pyarrow-17.0.0.tar.gz (1.1 MB)
10.74      ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 16.8 MB/s eta 0:00:00
11.11   Installing build dependencies: started
27.23   Installing build dependencies: finished with status 'done'
27.23   Getting requirements to build wheel: started
28.21   Getting requirements to build wheel: finished with status 'done'
28.21   Preparing metadata (pyproject.toml): started
29.09   Preparing metadata (pyproject.toml): finished with status 'done'
29.60 Collecting numpy>=1.16.6 (from pyarrow)
29.60   Using cached numpy-2.0.1-cp312-cp312-musllinux_1_1_x86_64.whl.metadata (60 kB)
29.66 Using cached numpy-2.0.1-cp312-cp312-musllinux_1_1_x86_64.whl (19.6 MB)
29.85 Building wheels for collected packages: pyarrow
29.85   Building wheel for pyarrow (pyproject.toml): started
30.91   Building wheel for pyarrow (pyproject.toml): finished with status 'error'
30.96   error: subprocess-exited-with-error
30.96   
30.96   × Building wheel for pyarrow (pyproject.toml) did not run successfully.
30.96   │ exit code: 1
30.96   ╰─> [352 lines of output]
30.96       <string>:34: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
30.96       running bdist_wheel
30.96       running build
30.96       running build_py
30.96       creating build
30.96       creating build/lib.linux-x86_64-cpython-312
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/flight.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_compute_docstrings.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/ipc.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/cuda.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/__init__.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_generated_version.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/orc.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/csv.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/pandas_compat.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/feather.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/dataset.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/types.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/benchmark.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/substrait.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/json.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/conftest.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/util.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/jvm.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/compute.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/fs.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/cffi.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/acero.py -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       creating build/lib.linux-x86_64-cpython-312/scripts
30.96       copying scripts/test_imports.py -> build/lib.linux-x86_64-cpython-312/scripts
30.96       copying scripts/test_leak.py -> build/lib.linux-x86_64-cpython-312/scripts
30.96       copying scripts/run_emscripten_tests.py -> build/lib.linux-x86_64-cpython-312/scripts
30.96       creating build/lib.linux-x86_64-cpython-312/benchmarks
30.96       copying benchmarks/__init__.py -> build/lib.linux-x86_64-cpython-312/benchmarks
30.96       copying benchmarks/parquet.py -> build/lib.linux-x86_64-cpython-312/benchmarks
30.96       copying benchmarks/convert_builtins.py -> build/lib.linux-x86_64-cpython-312/benchmarks
30.96       copying benchmarks/common.py -> build/lib.linux-x86_64-cpython-312/benchmarks
30.96       copying benchmarks/streaming.py -> build/lib.linux-x86_64-cpython-312/benchmarks
30.96       copying benchmarks/array_ops.py -> build/lib.linux-x86_64-cpython-312/benchmarks
30.96       copying benchmarks/convert_pandas.py -> build/lib.linux-x86_64-cpython-312/benchmarks
30.96       copying benchmarks/microbenchmarks.py -> build/lib.linux-x86_64-cpython-312/benchmarks
30.96       copying benchmarks/io.py -> build/lib.linux-x86_64-cpython-312/benchmarks
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_sparse_tensor.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_csv.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_builder.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_scalars.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/__init__.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_array.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_misc.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_fs.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_gandiva.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_util.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_cffi.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_table.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/arrow_16597.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/strategies.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_device.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/read_record_batch.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_orc.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_dataset_encryption.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_io.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/pandas_examples.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/arrow_39313.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_jvm.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_ipc.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_gdb.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_compute.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_json.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_schema.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_dlpack.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_cython.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_flight.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_cuda.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_extension_type.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_cuda_numba_interop.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_feather.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_substrait.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_strategies.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_tensor.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_convert_builtin.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/conftest.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_dataset.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_types.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/util.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_flight_async.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_memory.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_acero.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/arrow_7980.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_udf.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_cpp_internals.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/pandas_threaded_import.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_adhoc_memory_leak.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_pandas.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_deprecations.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/test_exec_plan.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/parquet
30.96       copying pyarrow/parquet/__init__.py -> build/lib.linux-x86_64-cpython-312/pyarrow/parquet
30.96       copying pyarrow/parquet/encryption.py -> build/lib.linux-x86_64-cpython-312/pyarrow/parquet
30.96       copying pyarrow/parquet/core.py -> build/lib.linux-x86_64-cpython-312/pyarrow/parquet
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/vendored
30.96       copying pyarrow/vendored/__init__.py -> build/lib.linux-x86_64-cpython-312/pyarrow/vendored
30.96       copying pyarrow/vendored/docscrape.py -> build/lib.linux-x86_64-cpython-312/pyarrow/vendored
30.96       copying pyarrow/vendored/version.py -> build/lib.linux-x86_64-cpython-312/pyarrow/vendored
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/interchange
30.96       copying pyarrow/interchange/__init__.py -> build/lib.linux-x86_64-cpython-312/pyarrow/interchange
30.96       copying pyarrow/interchange/from_dataframe.py -> build/lib.linux-x86_64-cpython-312/pyarrow/interchange
30.96       copying pyarrow/interchange/buffer.py -> build/lib.linux-x86_64-cpython-312/pyarrow/interchange
30.96       copying pyarrow/interchange/column.py -> build/lib.linux-x86_64-cpython-312/pyarrow/interchange
30.96       copying pyarrow/interchange/dataframe.py -> build/lib.linux-x86_64-cpython-312/pyarrow/interchange
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/__init__.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/encryption.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_compliant_nested_type.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_datetime.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_parquet_file.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_encryption.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_data_types.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/common.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_metadata.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/conftest.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_dataset.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_basic.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_parquet_writer.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       copying pyarrow/tests/parquet/test_pandas.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/parquet
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/tests/interchange
30.96       copying pyarrow/tests/interchange/__init__.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/interchange
30.96       copying pyarrow/tests/interchange/test_conversion.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/interchange
30.96       copying pyarrow/tests/interchange/test_interchange_spec.py -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/interchange
30.96       creating build/lib.linux-x86_64-cpython-312/examples
30.96       creating build/lib.linux-x86_64-cpython-312/examples/parquet_encryption
30.96       copying examples/parquet_encryption/sample_vault_kms_client.py -> build/lib.linux-x86_64-cpython-312/examples/parquet_encryption
30.96       creating build/lib.linux-x86_64-cpython-312/examples/flight
30.96       copying examples/flight/server.py -> build/lib.linux-x86_64-cpython-312/examples/flight
30.96       copying examples/flight/client.py -> build/lib.linux-x86_64-cpython-312/examples/flight
30.96       copying examples/flight/middleware.py -> build/lib.linux-x86_64-cpython-312/examples/flight
30.96       creating build/lib.linux-x86_64-cpython-312/examples/dataset
30.96       copying examples/dataset/write_dataset_encrypted.py -> build/lib.linux-x86_64-cpython-312/examples/dataset
30.96       running egg_info
30.96       writing pyarrow.egg-info/PKG-INFO
30.96       writing dependency_links to pyarrow.egg-info/dependency_links.txt
30.96       writing requirements to pyarrow.egg-info/requires.txt
30.96       writing top-level names to pyarrow.egg-info/top_level.txt
30.96       reading manifest file 'pyarrow.egg-info/SOURCES.txt'
30.96       reading manifest template 'MANIFEST.in'
30.96       warning: no files found matching '../LICENSE.txt'
30.96       warning: no files found matching '../NOTICE.txt'
30.96       warning: no previously-included files matching '*.so' found anywhere in distribution
30.96       warning: no previously-included files matching '*.pyc' found anywhere in distribution
30.96       warning: no previously-included files matching '*~' found anywhere in distribution
30.96       warning: no previously-included files matching '#*' found anywhere in distribution
30.96       warning: no previously-included files matching '.git*' found anywhere in distribution
30.96       warning: no previously-included files matching '.DS_Store' found anywhere in distribution
30.96       no previously-included directories found matching '.asv'
30.96       writing manifest file 'pyarrow.egg-info/SOURCES.txt'
30.96       creating build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/AWSSDKVariables.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/BuildUtils.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/DefineOptions.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindAWSSDKAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindAzure.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindBrotliAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindClangTools.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindGTestAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindInferTools.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindLLVMAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindOpenSSLAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindProtobufAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindPython3Alt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindRapidJSONAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindSQLite3Alt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindSnappyAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindThriftAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/Findc-aresAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindgRPCAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindgflagsAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindglogAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindjemallocAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/Findlibrados.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/Findlz4Alt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindorcAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/Findre2Alt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/Findutf8proc.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/FindzstdAlt.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/GandivaAddBitcode.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/SetupCxxFlags.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/ThirdpartyToolchain.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/UseCython.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/Usevcpkg.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/aws_sdk_cpp_generate_variables.sh -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/san-config.cmake -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying cmake_modules/snappy.diff -> build/lib.linux-x86_64-cpython-312/cmake_modules
30.96       copying pyarrow/__init__.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_acero.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_acero.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_azurefs.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_compute.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_compute.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_csv.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_csv.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_cuda.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_cuda.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_dataset.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_dataset.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_dataset_orc.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_dataset_parquet.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_dataset_parquet.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_dataset_parquet_encryption.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_dlpack.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_feather.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_flight.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_fs.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_fs.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_gcsfs.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_hdfs.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_json.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_json.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_orc.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_orc.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_parquet.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_parquet.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_parquet_encryption.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_parquet_encryption.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_pyarrow_cpp_tests.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_pyarrow_cpp_tests.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_s3fs.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/_substrait.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/array.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/benchmark.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/builder.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/compat.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/config.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/device.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/error.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/gandiva.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/io.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/ipc.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/lib.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/lib.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/memory.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/pandas-shim.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/public-api.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/scalar.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/table.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/tensor.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       copying pyarrow/types.pxi -> build/lib.linux-x86_64-cpython-312/pyarrow
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow_substrait.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libparquet_encryption.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/common.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow_dataset_parquet.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/__init__.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow_fs.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow_dataset.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libgandiva.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow_feather.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow_python.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow_acero.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow_cuda.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/includes/libarrow_flight.pxd -> build/lib.linux-x86_64-cpython-312/pyarrow/includes
30.96       copying pyarrow/tests/bound_function_visit_strings.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/extensions.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       copying pyarrow/tests/pyarrow_cython_example.pyx -> build/lib.linux-x86_64-cpython-312/pyarrow/tests
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/tests/data
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/parquet
30.96       copying pyarrow/tests/data/parquet/v0.7.1.all-named-index.parquet -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/parquet
30.96       copying pyarrow/tests/data/parquet/v0.7.1.column-metadata-handling.parquet -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/parquet
30.96       copying pyarrow/tests/data/parquet/v0.7.1.parquet -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/parquet
30.96       copying pyarrow/tests/data/parquet/v0.7.1.some-named-index.parquet -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/parquet
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       copying pyarrow/tests/data/orc/README.md -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       copying pyarrow/tests/data/orc/TestOrcFile.emptyFile.jsn.gz -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       copying pyarrow/tests/data/orc/TestOrcFile.emptyFile.orc -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       copying pyarrow/tests/data/orc/TestOrcFile.test1.jsn.gz -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       copying pyarrow/tests/data/orc/TestOrcFile.test1.orc -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       copying pyarrow/tests/data/orc/TestOrcFile.testDate1900.jsn.gz -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       copying pyarrow/tests/data/orc/TestOrcFile.testDate1900.orc -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       copying pyarrow/tests/data/orc/decimal.jsn.gz -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       copying pyarrow/tests/data/orc/decimal.orc -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/orc
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/feather
30.96       copying pyarrow/tests/data/feather/v0.17.0.version.2-compression.lz4.feather -> build/lib.linux-x86_64-cpython-312/pyarrow/tests/data/feather
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/src
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow
30.96       creating build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/CMakeLists.txt -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/api.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/arrow_to_pandas.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/arrow_to_pandas.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/arrow_to_python_internal.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/async.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/benchmark.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/benchmark.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/common.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/common.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/csv.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/csv.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/datetime.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/datetime.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/decimal.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/decimal.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/deserialize.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/deserialize.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/extension_type.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/extension_type.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/filesystem.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/filesystem.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/flight.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/flight.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/gdb.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/gdb.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/helpers.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/helpers.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/inference.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/inference.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/init.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/init.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/io.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/io.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/ipc.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/ipc.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/iterators.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/numpy_convert.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/numpy_convert.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/numpy_internal.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/numpy_interop.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/numpy_to_arrow.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/numpy_to_arrow.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/parquet_encryption.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/parquet_encryption.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/pch.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/platform.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/pyarrow.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/pyarrow.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/pyarrow_api.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/pyarrow_lib.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/python_test.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/python_test.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/python_to_arrow.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/python_to_arrow.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/serialize.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/serialize.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/type_traits.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/udf.cc -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/udf.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       copying pyarrow/src/arrow/python/visibility.h -> build/lib.linux-x86_64-cpython-312/pyarrow/src/arrow/python
30.96       running build_ext
30.96       creating /tmp/pip-install-6vmlv8p3/pyarrow_69dbbd2abee541f9a7de9153d465eb10/build/temp.linux-x86_64-cpython-312
30.96       -- Running cmake for PyArrow
30.96       cmake -DCMAKE_INSTALL_PREFIX=/tmp/pip-install-6vmlv8p3/pyarrow_69dbbd2abee541f9a7de9153d465eb10/build/lib.linux-x86_64-cpython-312/pyarrow -DPYTHON_EXECUTABLE=/usr/local/bin/python -DPython3_EXECUTABLE=/usr/local/bin/python -DPYARROW_CXXFLAGS= -DPYARROW_BUNDLE_ARROW_CPP=off -DPYARROW_BUNDLE_CYTHON_CPP=off -DPYARROW_GENERATE_COVERAGE=off -DCMAKE_BUILD_TYPE=release /tmp/pip-install-6vmlv8p3/pyarrow_69dbbd2abee541f9a7de9153d465eb10
30.96       error: command 'cmake' failed: No such file or directory
30.96       [end of output]
30.96   
30.96   note: This error originates from a subprocess, and is likely not a problem with pip.
30.96   ERROR: Failed building wheel for pyarrow
30.96 Failed to build pyarrow
31.01 ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (pyarrow)
assignUser commented 4 weeks ago

@numbworks you have a different problem, you don't have cmake installed. Building Pyarrow from source needs a matching version of Arrow C++ available as well. See docs: https://arrow.apache.org/docs/developers/python.html#building-on-linux-and-macos And please refrain from posting on multiple issues, it just creates notification spam.

@hteeyeoh your problem is that the dir .. does not contain the arrow root CMakeLists.txt, which happens because each run command is in it's own shell, so the cd arrow/cpp/build doesn not affect the next RUN, so moving the cd command into the cmake would work or you can use -S /arrow/cpp -B /arrow/cpp/build to specify both source and build dir explicitly without relying on the cwd: https://cmake.org/cmake/help/latest/manual/cmake.1.html#generate-a-project-buildsystem

numbworks commented 4 weeks ago

you have a different problem, you don't have cmake installed. Building Pyarrow from source needs a matching version of Arrow C++ available as well.

@assignUser Hey Jacob, thank you for your answer, but it seems from the thread that your solution doesn't work.

Do you have a Dockerfile example that demonstrates that your proposal works?

I also read the following answer from you in another thread:

Please see https://github.com/apache/arrow/issues/18036, we don't publish musl wheels at the moment.

Are there plan to change this? Because, I don't know if you are aware of it, but PyArrow will be a mandatory dependency for Pandas starting Pandas v3.0.0 - please read more here: https://pandas.pydata.org/pdeps/0010-required-pyarrow-dependency.html.

One of the official Python images on Docker Hub is based on Alpine Linux, which it's also the more optimized on a resources perspective. The lack of PyArrow wheels for Alpine means that, starting Pandas 3.0.0 (maybe in six months from now), thousands of Python developers and data scientists won't be able to do their work in a containerized environment.

The only alternative at the moment is to use the Debian-based image on Python's Docker Hub, which it's 15x more resource hungry than Alpine:

FROM python:3.12.5-bullseye

RUN pip install --upgrade pip \
    && pip install numpy==1.26.3 \
    && pip install pyarrow==15.0.0 \ 
    && pip install openpyxl==3.1.0 \ 
    && pip install pandas==2.2.0 \ 

I hope you can discuss this matter within the team and assign the right priority to it.

Thank you.

hteeyeoh commented 3 weeks ago

@numbworks you have a different problem, you don't have cmake installed. Building Pyarrow from source needs a matching version of Arrow C++ available as well. See docs: https://arrow.apache.org/docs/developers/python.html#building-on-linux-and-macos And please refrain from posting on multiple issues, it just creates notification spam.

@hteeyeoh your problem is that the dir .. does not contain the arrow root CMakeLists.txt, which happens because each run command is in it's own shell, so the cd arrow/cpp/build doesn not affect the next RUN, so moving the cd command into the cmake would work or you can use -S /arrow/cpp -B /arrow/cpp/build to specify both source and build dir explicitly without relying on the cwd: https://cmake.org/cmake/help/latest/manual/cmake.1.html#generate-a-project-buildsystem

Thank you. Will give it a try

assignUser commented 3 weeks ago

@numbworks If you had checked out the issue you would know that we are not against providing musl wheels, someone just has to do the work.

I hope you can discuss this matter within the team and assign the right priority to it.

Hey, cool thing about this being an open source project: you are part of the team! So if this is something you would like to see the fastest way to get it is to contribute to a solution.