Daily Development using Archery¶
To ease some of the daily development tasks, we developed a Python-written utility called Archery.
Installation¶
Archery requires Python 3.6 or later. It is recommended to install archery in
editable mode with the -e
flag to automatically update the installation
when pulling the Arrow repository.
pip install -e dev/archery
Usage¶
You can inspect Archery usage by passing the --help
flag:
$ archery --help
Usage: archery [OPTIONS] COMMAND [ARGS]...
Apache Arrow developer utilities.
See sub-commands help with `archery <cmd> --help`.
Options:
--debug Increase logging with debugging output.
--pdb Invoke pdb on uncaught exception.
-q, --quiet Silence executed commands.
--help Show this message and exit.
Commands:
benchmark Arrow benchmarking.
build Initialize an Arrow C++ build
docker Interact with docker-compose based builds.
integration Execute protocol and Flight integration tests
lint Check Arrow source tree for errors
numpydoc Lint python docstring with NumpyDoc
trigger-bot
Archery exposes independent subcommands, each of which provides dedicated help output, for example:
$ archery docker --help
Usage: archery docker [OPTIONS] COMMAND [ARGS]...
Interact with docker-compose based builds.
Options:
--src <arrow_src> Specify Arrow source directory.
--help Show this message and exit.
Commands:
images List the available docker-compose images.
push Push the generated docker-compose image.
run Execute docker-compose builds.