Skip to main content

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 link Arrow::arrow_shared or Arrow::arrow_static.
  • Use pkg-config --cflags --libs arrow for non-CMake native builds.
  • For Python-extension builds, use pyarrow.get_include(), pyarrow.get_libraries(), and pyarrow.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)

Source distribution for arx-arrowcpp-sources 24.0.0
File Size Uploaded
arx_arrowcpp_sources-24.0.0.tar.gz 5.8 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for arx-arrowcpp-sources 24.0.0
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

24.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page