Crate | Description | Documentation |
---|---|---|
Arrow | Core functionality (memory layout, array builders, low level computations) | (README) |
Parquet | Parquet support | (README) |
DataFusion | In-memory query engine with SQL support | (README) |
Before running tests and examples it is necessary to set up the local development enviroment.
The tests rely on test data that is contained in git submodules.
To pull down this data run the following:
git submodule update --init
This populates data in two git submodules:
cpp/submodules/parquet_testing/data
(sourced from https://github.com/apache/parquet-testing.git)testing
(sourced from https://github.com/apache/arrow-testing)
Create two new environment variables to point to these directories as follows:
export PARQUET_TEST_DATA=/path/to/arrow/cpp/submodules/parquet-testing/data
export ARROW_TEST_DATA=/path/to/arrow/testing/data/
It is now possible to run cargo test
as usual.
Our CI uses rustfmt
to check code formatting. Although the project is
built and tested against nightly rust we use the stable version of
rustfmt
. So before submitting a PR be sure to run the following
and check for lint issues:
cargo +stable fmt --all -- --check