Daily Development using Archery¶
To ease some of the daily development tasks, we developed a Python-written utility called Archery.
Archery requires Python 3.5 or later. It is recommended to install archery in
editable mode with the
-e flag to automatically update the intallation
when pulling the Arrow repository.
pip install -e dev/archery
You can inspect Archery usage by passing the
$ 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.