Pants v2: Fast, consistent builds for Python and more

Welcome to the Pants v2 documentation hub!

Pants v2 is a fast, scalable build system for growing codebases. It's currently focused on Python, with support for other languages coming soon.

Here you'll find guides to help you get started with Pants v2, comprehensive documentation on how to configure, run and customize Pants v2, and information on how to get help from the Pants community.

Get Started
./pants fmt [args]

Autoformat source code.

Config section: [fmt]

Basic options

None

Advanced options

--[no-]fmt-per-file-caching
PANTS_FMT_PER_FILE_CACHING
per_file_caching
default: False
Rather than formatting all files in a single batch, format each file as a separate process. Why do this? You'll get many more cache hits. Why not do this? Formatters both have substantial startup overhead and are cheap to add one additional file to the run. On a cold cache, it is much faster to use `--no-per-file-caching`. We only recommend using `--per-file-caching` if you are using a remote cache or if you have benchmarked that this option will be faster than `--no-per-file-caching` for your use case.

Deprecated options

--[no-]fmt-per-target-caching
PANTS_FMT_PER_TARGET_CACHING
per_target_caching
default: False
Deprecated, will be removed in version: 2.1.0.dev0.
Use the renamed `--per-file-caching` option instead. If this option is set, Pants will now run per every file, rather than per target.
See `--per-file-caching`.

Related subsystems

black, docformatter, download-pex-bin, fmt, isort, pex, protoc, python-infer, python-native-code, python-repos, python-setup, source, subprocess-environment

Updated about a month ago


fmt


Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.