arx-arrowcpp-sources
arx-arrowcpp-sources packages a pinned Apache Arrow C++ source release for the
Arx ecosystem.
It does not ship compiled Arrow binaries. Instead, it ships:
- the upstream Apache Arrow
cpp/source tree - the upstream Apache Arrow
format/FlatBuffers definitions used by C++ - upstream release metadata, license, and notice files
- Python helper functions to locate those files from build systems
The package also depends on pyarrow >=24.0.0,<25.0.0 so Arx projects can use
the matching Python runtime package alongside the vendored source-release
layout.
Should you bundle Arrow C++ sources?
Usually, no. Prefer these integration paths when possible:
- Use an installed Arrow C++ package with CMake's
find_package(Arrow REQUIRED)and linkArrow::arrow_sharedorArrow::arrow_static. - Use
pkg-config --cflags --libs arrowfor non-CMake native builds. - For Python-extension builds, use
pyarrow.get_include(),pyarrow.get_libraries(), andpyarrow.get_library_dirs().
This package exists for Arx workflows that need a reproducible, Python-package addressable copy of the Arrow C++ source release.
Usage
from arx_arrowcpp_sources import (
bundled_arrowcpp_version,
get_cmake_dir,
get_cpp_dir,
get_header_files,
get_include_dir,
get_source_files,
)
print(bundled_arrowcpp_version())
print(get_cpp_dir())
print(get_include_dir())
print(get_cmake_dir())
print(get_header_files())
print(get_source_files())
Build behavior
Run python scripts/build_bundle.py before poetry build. The bundle script
fetches the pinned Apache Arrow source release, verifies its SHA256 checksum,
and stores the C++ source subset under src/arx_arrowcpp_sources/vendor/.
The vendored layout is intentionally close to the upstream release layout:
src/arx_arrowcpp_sources/vendor/
├── cpp/
├── format/
├── CHANGELOG.md
├── LICENSE.txt
├── NOTICE.txt
├── README.md
└── bundle-metadata.json
Development
python scripts/build_bundle.py
pytest -q
ruff check .
mypy src tests
Metadata
Release files for arx-arrowcpp-sources 24.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| arx_arrowcpp_sources-24.0.0.tar.gz | 5.8 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| arx_arrowcpp_sources-24.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.5 MB
Release files / arx_arrowcpp_sources-24.0.0.tar.gz
| Download URL | arx_arrowcpp_sources-24.0.0.tar.gz |
|---|---|
| Size | 5.8 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7143c2da00b22335208cfbaa77b07371925e0225bafeb3f616cd0cfe13bf5c60
|
|
BLAKE2b-256 checksum How to use checksums |
67e95e4b4c1a48980eb0f13bc79113d45e946461153ffc434e106b13b4a3617f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.3.4 CPython/3.13.13 Linux/6.17.0-1010-azure
|
Release files / arx_arrowcpp_sources-24.0.0-py3-none-any.whl
| Download URL | arx_arrowcpp_sources-24.0.0-py3-none-any.whl |
|---|---|
| Size | 7.7 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f86db4b0c84e87718078707371102de577fe72ad0612eff4ef2191628a5466eb
|
|
BLAKE2b-256 checksum How to use checksums |
7514d87f3391c2913e6998b5f833255959badf05996208a0534536ef4e7384d5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/2.3.4 CPython/3.13.13 Linux/6.17.0-1010-azure
|