Pantsbuild
Pantsbuild configuration file
pants*.toml
Validate
Check your file against this schema
Opens the validator with this schema already loaded. Paste your
pants*.toml and it validates in your browser — nothing is uploaded.
Reference
Fields (first 250)
Generated directly from the schema, following local
$refs, to two levels of nesting. This schema is large — the table is truncated; use the raw schema for the rest.
| Field | Type | Description |
|---|---|---|
GLOBAL | object | Options to control the overall behavior of Pants. |
GLOBAL.allow_deprecated_macos_versions | array | Silence warnings/errors about running Pants on these versions of macOS. Pants only supports recent versions of macOS. You can try running on older versions, but it may or may not work default: [] |
GLOBAL.backend_packages | array | Register functionality from these backends https://www.pantsbuild.org/v2.32/docs/reference-global#backend_packages default: [] |
GLOBAL.build_file_prelude_globs | array | Python files to evaluate and whose symbols should be exposed to all BUILD files https://www.pantsbuild.org/v2.32/docs/reference-global#build_file_prelude_globs default: [] |
GLOBAL.build_ignore | array | Path globs or literals to ignore when identifying BUILD files https://www.pantsbuild.org/v2.32/docs/reference-global#build_ignore default: [] |
GLOBAL.build_patterns | array | The naming scheme for BUILD files, i.e. where you define targets https://www.pantsbuild.org/v2.32/docs/reference-global#build_patterns default: ["BUILD", "BUILD.*"] |
GLOBAL.ca_certs_path | string | Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build https://www.pantsbuild.org/v2.32/docs/reference-global#ca_certs_path default: null |
GLOBAL.cache_content_behavior | enum | Controls how the content of cache entries is handled during process execution https://www.pantsbuild.org/v2.32/docs/reference-global#cache_content_behavior default: "fetch"one of: "fetch", "validate", "defer" |
GLOBAL.colors | boolean | Whether Pants should use colors in output or not https://www.pantsbuild.org/v2.32/docs/reference-global#colors default: false |
GLOBAL.concurrent | boolean | Enable concurrent runs of Pants https://www.pantsbuild.org/v2.32/docs/reference-global#concurrent default: false |
GLOBAL.docker_execution | boolean | If true, `docker_environment` targets can be used to run builds inside a Docker container https://www.pantsbuild.org/v2.32/docs/reference-global#docker_execution default: true |
GLOBAL.dynamic_ui | boolean | Display a dynamically-updating console UI as Pants runs https://www.pantsbuild.org/v2.32/docs/reference-global#dynamic_ui default: true |
GLOBAL.dynamic_ui_renderer | enum | If `--dynamic-ui` is enabled, selects the renderer https://www.pantsbuild.org/v2.32/docs/reference-global#dynamic_ui_renderer default: "indicatif-spinner"one of: "indicatif-spinner…, "experimental-prod… |
GLOBAL.enable_stack_trampoline | string | Enable `sys.activate_stack_trampoline` for Pants's own Python https://www.pantsbuild.org/v2.32/docs/reference-global#enable_stack_trampoline default: null |
GLOBAL.enable_target_origin_sources_blocks | boolean | Enable fine grained target analysis based on line numbers https://www.pantsbuild.org/v2.32/docs/reference-global#enable_target_origin_sources_blocks default: false |
GLOBAL.engine_visualize_to | any | A directory to write execution and rule graphs to as `dot` files https://www.pantsbuild.org/v2.32/docs/reference-global#engine_visualize_to default: null |
GLOBAL.file_downloads_max_attempts | number | When Pants downloads files (for example, for the `http_source` source), Pants will retry the download if a "retryable" error occurs https://www.pantsbuild.org/v2.32/docs/reference-global#file_downloads_max_attempts default: 4 |
GLOBAL.file_downloads_retry_delay | number | When Pants downloads files (for example, for the `http_source` source), Pants will retry the download if a "retryable" error occurs https://www.pantsbuild.org/v2.32/docs/reference-global#file_downloads_retry_delay default: 0.2 |
GLOBAL.ignore_warnings | array | Ignore logs and warnings matching these strings https://www.pantsbuild.org/v2.32/docs/reference-global#ignore_warnings default: [] |
GLOBAL.keep_sandboxes | enum | Controls whether Pants will clean up local directories used as chroots for running processes https://www.pantsbuild.org/v2.32/docs/reference-global#keep_sandboxes default: "never"one of: "always", "on_failure", "never" |
GLOBAL.level | enum | Set the logging level https://www.pantsbuild.org/v2.32/docs/reference-global#level default: "info"one of: "trace", "debug", "info", "warn", "error" |
GLOBAL.local_cache | boolean | Whether to cache process executions in a local cache persisted to disk at `--local-store-dir` https://www.pantsbuild.org/v2.32/docs/reference-global#local_cache default: true |
GLOBAL.local_execution_root_dir | string | Directory to use for local process execution sandboxing https://www.pantsbuild.org/v2.32/docs/reference-global#local_execution_root_dir default: "<tmp_dir>" |
GLOBAL.local_store_dir | string | Directory to use for the local file store, which stores the results of subprocesses run by Pants https://www.pantsbuild.org/v2.32/docs/reference-global#local_store_dir default: "$XDG_CACHE_HOME/lmdb_store" |
GLOBAL.local_store_directories_max_size_bytes | number | The maximum size in bytes of the local store containing directories https://www.pantsbuild.org/v2.32/docs/reference-global#local_store_directories_max_size_bytes default: 16000000000 |
GLOBAL.local_store_files_max_size_bytes | number | The maximum size in bytes of the local store containing files https://www.pantsbuild.org/v2.32/docs/reference-global#local_store_files_max_size_bytes default: 256000000000 |
GLOBAL.local_store_processes_max_size_bytes | number | The maximum size in bytes of the local store containing process cache entries https://www.pantsbuild.org/v2.32/docs/reference-global#local_store_processes_max_size_bytes default: 16000000000 |
GLOBAL.local_store_shard_count | number | The number of LMDB shards created for the local store https://www.pantsbuild.org/v2.32/docs/reference-global#local_store_shard_count default: 16 |
GLOBAL.log_levels_by_target | object | Set a more specific logging level for one or more logging targets https://www.pantsbuild.org/v2.32/docs/reference-global#log_levels_by_target default: {} |
GLOBAL.log_show_rust_3rdparty | boolean | Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine https://www.pantsbuild.org/v2.32/docs/reference-global#log_show_rust_3rdparty default: false |
GLOBAL.logdir | string | Write logs to files under this directory https://www.pantsbuild.org/v2.32/docs/reference-global#logdir default: null |
GLOBAL.loop | boolean | Run goals continuously as file changes are detected https://www.pantsbuild.org/v2.32/docs/reference-global#loop default: false |
GLOBAL.loop_max | number | The maximum number of times to loop when `--loop` is specified https://www.pantsbuild.org/v2.32/docs/reference-global#loop_max default: 4294967296 |
GLOBAL.named_caches_dir | string | Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches https://www.pantsbuild.org/v2.32/docs/reference-global#named_caches_dir default: "$XDG_CACHE_HOME/named_caches" |
GLOBAL.pants_bin_name | string | The name of the script or binary used to invoke Pants https://www.pantsbuild.org/v2.32/docs/reference-global#pants_bin_name default: "pants" |
GLOBAL.pants_config_files | array | Paths to Pants config files https://www.pantsbuild.org/v2.32/docs/reference-global#pants_config_files default: ["<buildroot>/pants.toml"] |
GLOBAL.pants_distdir | string | Write end products, such as the results of `pants package`, to this dir https://www.pantsbuild.org/v2.32/docs/reference-global#pants_distdir default: "<buildroot>/dist" |
GLOBAL.pants_ignore | array | Paths to ignore for all filesystem operations performed by pants (e.g https://www.pantsbuild.org/v2.32/docs/reference-global#pants_ignore default: [".*/", "/dist/", "__pycache__", "!.semgrep/", "!.github/"] |
GLOBAL.pants_ignore_use_gitignore | boolean | Include patterns from `.gitignore`, `.git/info/exclude`, and the global gitignore files in the option `[GLOBAL].pants_ignore`, which is used for Pants to ignore filesystem operations on those patterns default: true |
GLOBAL.pants_physical_workdir_base | string | When set, a base directory in which to store `--pants-workdir` contents https://www.pantsbuild.org/v2.32/docs/reference-global#pants_physical_workdir_base default: null |
GLOBAL.pants_subprocessdir | string | The directory to use for tracking subprocess metadata https://www.pantsbuild.org/v2.32/docs/reference-global#pants_subprocessdir default: "<buildroot>/.pants.d/pids" |
GLOBAL.pants_version | string | Use this Pants version https://www.pantsbuild.org/v2.32/docs/reference-global#pants_version default: "<pants_version>" |
GLOBAL.pants_workdir | string | Write intermediate logs and output files to this dir https://www.pantsbuild.org/v2.32/docs/reference-global#pants_workdir default: "<buildroot>/.pants.d/workdir" |
GLOBAL.pantsd | boolean | Enables use of the Pants daemon (pantsd). pantsd can significantly improve runtime performance by lowering per-run startup cost, and by memoizing filesystem operations and rule execution default: true |
GLOBAL.pantsd_invalidation_globs | array | Filesystem events matching any of these globs will trigger a daemon restart https://www.pantsbuild.org/v2.32/docs/reference-global#pantsd_invalidation_globs default: [] |
GLOBAL.pantsd_max_memory_usage | any | The maximum memory usage of the pantsd process https://www.pantsbuild.org/v2.32/docs/reference-global#pantsd_max_memory_usage default: "4GiB" |
GLOBAL.pantsd_pailgun_port | number | The port to bind the Pants nailgun server to https://www.pantsbuild.org/v2.32/docs/reference-global#pantsd_pailgun_port default: 0 |
GLOBAL.pantsd_timeout_when_multiple_invocations | number | The maximum amount of time to wait for the invocation to start until raising a timeout exception https://www.pantsbuild.org/v2.32/docs/reference-global#pantsd_timeout_when_multiple_invocations default: 60.0 |
GLOBAL.pantsrc | boolean | Use pantsrc files located at the paths specified in the global option `pantsrc_files` https://www.pantsbuild.org/v2.32/docs/reference-global#pantsrc default: true |
GLOBAL.pantsrc_files | array | Override config with values from these files, using syntax matching that of `--pants-config-files` https://www.pantsbuild.org/v2.32/docs/reference-global#pantsrc_files default: ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"] |
GLOBAL.plugins | array | Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically https://www.pantsbuild.org/v2.32/docs/reference-global#plugins default: [] |
GLOBAL.plugins_force_resolve | boolean | Re-resolve plugins, even if previously resolved https://www.pantsbuild.org/v2.32/docs/reference-global#plugins_force_resolve default: false |
GLOBAL.print_stacktrace | boolean | Print the full exception stack trace for any errors https://www.pantsbuild.org/v2.32/docs/reference-global#print_stacktrace default: false |
GLOBAL.process_execution_cache_namespace | string | The cache namespace for process execution https://www.pantsbuild.org/v2.32/docs/reference-global#process_execution_cache_namespace default: null |
GLOBAL.process_execution_graceful_shutdown_timeout | number | The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `pants run`) before killing it https://www.pantsbuild.org/v2.32/docs/reference-global#process_execution_graceful_shutdown_timeout default: 3 |
GLOBAL.process_execution_local_enable_nailgun | boolean | Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun https://www.pantsbuild.org/v2.32/docs/reference-global#process_execution_local_enable_nailgun default: true |
GLOBAL.process_execution_local_parallelism | number | Number of concurrent processes that may be executed locally https://www.pantsbuild.org/v2.32/docs/reference-global#process_execution_local_parallelism default: "#cores" |
GLOBAL.process_execution_remote_parallelism | number | Number of concurrent processes that may be executed remotely https://www.pantsbuild.org/v2.32/docs/reference-global#process_execution_remote_parallelism default: 128 |
GLOBAL.process_per_child_memory_usage | any | The default memory usage for a single "pooled" child process https://www.pantsbuild.org/v2.32/docs/reference-global#process_per_child_memory_usage default: "512MiB" |
GLOBAL.process_total_child_memory_usage | any | The maximum memory usage for all "pooled" child processes https://www.pantsbuild.org/v2.32/docs/reference-global#process_total_child_memory_usage default: null |
GLOBAL.pythonpath | array | Add these directories to PYTHONPATH to search for plugins https://www.pantsbuild.org/v2.32/docs/reference-global#pythonpath default: [] |
GLOBAL.remote_ca_certs_path | string | Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address` https://www.pantsbuild.org/v2.32/docs/reference-global#remote_ca_certs_path default: null |
GLOBAL.remote_cache_read | boolean | Whether to enable reading from a remote cache https://www.pantsbuild.org/v2.32/docs/reference-global#remote_cache_read default: false |
GLOBAL.remote_cache_rpc_concurrency | number | The number of concurrent requests allowed to the remote cache service https://www.pantsbuild.org/v2.32/docs/reference-global#remote_cache_rpc_concurrency default: 128 |
GLOBAL.remote_cache_rpc_timeout_millis | number | Timeout value for remote cache RPCs in milliseconds https://www.pantsbuild.org/v2.32/docs/reference-global#remote_cache_rpc_timeout_millis default: 1500 |
GLOBAL.remote_cache_warnings | enum | How frequently to log remote cache failures at the `warn` log level https://www.pantsbuild.org/v2.32/docs/reference-global#remote_cache_warnings default: "backoff"one of: "ignore", "first_only", "backoff", "always" |
GLOBAL.remote_cache_write | boolean | Whether to enable writing results to a remote cache https://www.pantsbuild.org/v2.32/docs/reference-global#remote_cache_write default: false |
GLOBAL.remote_client_certs_path | string | Path to a PEM file containing client certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address` when using client authentication (mTLS) default: null |
GLOBAL.remote_client_key_path | string | Path to a PEM file containing a private key used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address` when using client authentication (mTLS) default: null |
GLOBAL.remote_execution | boolean | Enables remote workers for increased parallelism. (Alpha) https://www.pantsbuild.org/v2.32/docs/reference-global#remote_execution default: false |
GLOBAL.remote_execution_address | string | The URI of a server/entity used as a remote execution scheduler https://www.pantsbuild.org/v2.32/docs/reference-global#remote_execution_address default: null |
GLOBAL.remote_execution_append_only_caches_base_path | string | Sets the base path to use when setting up an append-only cache for a process running remotely https://www.pantsbuild.org/v2.32/docs/reference-global#remote_execution_append_only_caches_base_path default: null |
GLOBAL.remote_execution_extra_platform_properties | array | Platform properties to set on remote execution requests https://www.pantsbuild.org/v2.32/docs/reference-global#remote_execution_extra_platform_properties default: [] |
GLOBAL.remote_execution_headers | object | Headers to set on remote execution requests https://www.pantsbuild.org/v2.32/docs/reference-global#remote_execution_headers default: "{}" |
GLOBAL.remote_execution_overall_deadline_secs | number | Overall timeout in seconds for each remote execution request from time of submission https://www.pantsbuild.org/v2.32/docs/reference-global#remote_execution_overall_deadline_secs default: 3600 |
GLOBAL.remote_execution_rpc_concurrency | number | The number of concurrent requests allowed to the remote execution service https://www.pantsbuild.org/v2.32/docs/reference-global#remote_execution_rpc_concurrency default: 128 |
GLOBAL.remote_instance_name | string | Name of the remote instance to use by remote caching and remote execution https://www.pantsbuild.org/v2.32/docs/reference-global#remote_instance_name default: null |
GLOBAL.remote_oauth_bearer_token | string | An oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address` https://www.pantsbuild.org/v2.32/docs/reference-global#remote_oauth_bearer_token default: null |
GLOBAL.remote_provider | enum | The type of provider to use, if using a remote cache and/or remote execution, See https://www.pantsbuild.org/2.32/docs/using-pants/remote-caching-and-execution for details default: "reapi"one of: "reapi", "experimental-file…, "experimental-gith… |
GLOBAL.remote_store_address | string | The URI of a server/entity used as a remote file store https://www.pantsbuild.org/v2.32/docs/reference-global#remote_store_address default: null |
GLOBAL.remote_store_batch_api_size_limit | number | The maximum total size of blobs allowed to be sent in a single batch API call to the remote store https://www.pantsbuild.org/v2.32/docs/reference-global#remote_store_batch_api_size_limit default: 4194304 |
GLOBAL.remote_store_batch_load_enabled | boolean | Whether to enable batch load requests to the remote store https://www.pantsbuild.org/v2.32/docs/reference-global#remote_store_batch_load_enabled default: false |
GLOBAL.remote_store_chunk_bytes | number | Size in bytes of chunks transferred to/from the remote file store https://www.pantsbuild.org/v2.32/docs/reference-global#remote_store_chunk_bytes default: 1048576 |
GLOBAL.remote_store_headers | object | Headers to set on remote store requests https://www.pantsbuild.org/v2.32/docs/reference-global#remote_store_headers default: "{}" |
GLOBAL.remote_store_rpc_concurrency | number | The number of concurrent requests allowed to the remote store service https://www.pantsbuild.org/v2.32/docs/reference-global#remote_store_rpc_concurrency default: 128 |
GLOBAL.remote_store_rpc_retries | number | Number of times to retry any RPC to the remote store before giving up https://www.pantsbuild.org/v2.32/docs/reference-global#remote_store_rpc_retries default: 2 |
GLOBAL.remote_store_rpc_timeout_millis | number | Timeout value for remote store RPCs (not including streaming requests) in milliseconds https://www.pantsbuild.org/v2.32/docs/reference-global#remote_store_rpc_timeout_millis default: 30000 |
GLOBAL.rule_threads_core | number | The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`) https://www.pantsbuild.org/v2.32/docs/reference-global#rule_threads_core default: "max(2, #cores/2)" |
GLOBAL.rule_threads_max | number | The maximum number of threads to use to execute `@rule` logic https://www.pantsbuild.org/v2.32/docs/reference-global#rule_threads_max default: null |
GLOBAL.sandboxer | boolean | Enables use of the sandboxer process https://www.pantsbuild.org/v2.32/docs/reference-global#sandboxer default: false |
GLOBAL.session_end_tasks_timeout | number | The time in seconds to wait for still-running "session end" tasks to complete before finishing completion of a Pants invocation. "Session end" tasks include, for example, writing data that was generated during the applicable Pants default: 3.0 |
GLOBAL.show_log_target | boolean | Display the target where a log message originates in that log message's output https://www.pantsbuild.org/v2.32/docs/reference-global#show_log_target default: false |
GLOBAL.spec_files | array | Read additional specs (target addresses, files, and/or globs), one per line, from these files https://www.pantsbuild.org/v2.32/docs/reference-global#spec_files default: [] |
GLOBAL.stats_record_option_scopes | array | Option scopes to record in stats on run completion https://www.pantsbuild.org/v2.32/docs/reference-global#stats_record_option_scopes default: ["*"] |
GLOBAL.streaming_workunits_complete_async | boolean | True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled https://www.pantsbuild.org/v2.32/docs/reference-global#streaming_workunits_complete_async default: true |
GLOBAL.streaming_workunits_level | enum | The level of workunits that will be reported to streaming workunit event receivers https://www.pantsbuild.org/v2.32/docs/reference-global#streaming_workunits_level default: "debug"one of: "trace", "debug", "info", "warn", "error" |
GLOBAL.streaming_workunits_report_interval | number | Interval in seconds between when streaming workunit event receivers will be polled https://www.pantsbuild.org/v2.32/docs/reference-global#streaming_workunits_report_interval default: 1.0 |
GLOBAL.subproject_roots | array | Paths that correspond with build roots for any subproject that this project depends on https://www.pantsbuild.org/v2.32/docs/reference-global#subproject_roots default: [] |
GLOBAL.tag | array | Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix) https://www.pantsbuild.org/v2.32/docs/reference-global#tag default: [] |
GLOBAL.unmatched_build_file_globs | enum | What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found https://www.pantsbuild.org/v2.32/docs/reference-global#unmatched_build_file_globs default: "warn"one of: "ignore", "warn", "error" |
GLOBAL.unmatched_cli_globs | enum | What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found https://www.pantsbuild.org/v2.32/docs/reference-global#unmatched_cli_globs default: "error"one of: "ignore", "warn", "error" |
GLOBAL.verify_config | boolean | Verify that all config file values correspond to known options https://www.pantsbuild.org/v2.32/docs/reference-global#verify_config default: true |
GLOBAL.watch_filesystem | boolean | Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled https://www.pantsbuild.org/v2.32/docs/reference-global#watch_filesystem default: true |
anonymous-telemetry | object | Options related to sending anonymous stats to the Pants project, to aid development. |
anonymous-telemetry.enabled | boolean | Whether to send anonymous telemetry to the Pants project https://www.pantsbuild.org/v2.32/docs/reference-anonymous-telemetry#enabled default: false |
anonymous-telemetry.repo_id | string | An anonymized ID representing this repo https://www.pantsbuild.org/v2.32/docs/reference-anonymous-telemetry#repo_id default: null |
autoflake | object | The Autoflake Python code formatter (https://github.com/myint/autoflake). This version of Pants uses `autoflake` version 2.3.1 by default. Use a dedicated lockfile and the `install_from_resolve` option to control this. |
autoflake.args | array | Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'` https://www.pantsbuild.org/v2.32/docs/reference-autoflake#args default: ["--remove-all-unused-imports"] |
autoflake.console_script | string | The console script for the tool https://www.pantsbuild.org/v2.32/docs/reference-autoflake#console_script default: "autoflake" |
autoflake.entry_point | string | The entry point for the tool https://www.pantsbuild.org/v2.32/docs/reference-autoflake#entry_point default: null |
autoflake.install_from_resolve | string | If specified, install the tool using the lockfile for this named resolve https://www.pantsbuild.org/v2.32/docs/reference-autoflake#install_from_resolve default: null |
autoflake.interpreter_constraints | array | Python interpreter constraints for this tool https://www.pantsbuild.org/v2.32/docs/reference-autoflake#interpreter_constraints default: ["CPython>=3.9,<3.15"] |
autoflake.requirements | array | If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile https://www.pantsbuild.org/v2.32/docs/reference-autoflake#requirements default: [] |
autoflake.skip | boolean | If true, don't use Autoflake when running `pants fmt` and `pants lint` https://www.pantsbuild.org/v2.32/docs/reference-autoflake#skip default: false |
black | object | The Black Python code formatter (https://black.readthedocs.io/). This version of Pants uses `black` version 24.10.0 by default. Use a dedicated lockfile and the `install_from_resolve` option to control this. |
black.args | array | Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'` https://www.pantsbuild.org/v2.32/docs/reference-black#args default: [] |
black.config | any | Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format) https://www.pantsbuild.org/v2.32/docs/reference-black#config default: null |
black.config_discovery | boolean | If true, Pants will include any relevant pyproject.toml config files during runs https://www.pantsbuild.org/v2.32/docs/reference-black#config_discovery default: true |
black.console_script | string | The console script for the tool https://www.pantsbuild.org/v2.32/docs/reference-black#console_script default: "black" |
black.entry_point | string | The entry point for the tool https://www.pantsbuild.org/v2.32/docs/reference-black#entry_point default: null |
black.install_from_resolve | string | If specified, install the tool using the lockfile for this named resolve https://www.pantsbuild.org/v2.32/docs/reference-black#install_from_resolve default: null |
black.interpreter_constraints | array | Python interpreter constraints for this tool https://www.pantsbuild.org/v2.32/docs/reference-black#interpreter_constraints default: ["CPython>=3.9,<3.15"] |
black.requirements | array | If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile https://www.pantsbuild.org/v2.32/docs/reference-black#requirements default: [] |
black.skip | boolean | If true, don't use Black when running `pants fmt` and `pants lint` https://www.pantsbuild.org/v2.32/docs/reference-black#skip default: false |
build-deprecations-fixer | object | A tool/plugin for fixing BUILD file deprecations (where possible). This includes deprecations for: - Renamed targets - Renamed fields |
build-deprecations-fixer.skip | boolean | If true, don't use BUILD Deprecations Fixer when running `pants fix` https://www.pantsbuild.org/v2.32/docs/reference-build-deprecations-fixer#skip default: false |
buildifier | object | Buildifier is a tool for formatting BUILD files with a standard convention. Pants supports running Buildifier on your Pants BUILD files for several reasons: - You might like the style that buildifier uses. - You might be incrementally |
buildifier.args | array | Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'` https://www.pantsbuild.org/v2.32/docs/reference-buildifier#args default: [] |
buildifier.known_versions | array | Known versions to verify downloads against https://www.pantsbuild.org/v2.32/docs/reference-buildifier#known_versions default: ["8.0.3|linux_arm64 |bdd9b92e2c65d46affeecaefb54e68d34c272d1… |
buildifier.skip | boolean | If true, don't use Buildifier when running `pants fmt` https://www.pantsbuild.org/v2.32/docs/reference-buildifier#skip default: false |
buildifier.url_platform_mapping | object | A dictionary mapping platforms to strings to be used when generating the URL to download the tool https://www.pantsbuild.org/v2.32/docs/reference-buildifier#url_platform_mapping default: {"linux_arm64": "linux-arm64", "linux_x86_64"… |
buildifier.url_template | string | URL to download the tool, either as a single binary file or a compressed file (e.g. zip file) https://www.pantsbuild.org/v2.32/docs/reference-buildifier#url_template default: "https://github.com/bazelbuild/buildtools/releases/download/… |
buildifier.use_unsupported_version | enum | What action to take in case the requested version of Buildifier is not supported https://www.pantsbuild.org/v2.32/docs/reference-buildifier#use_unsupported_version default: "error"one of: "error", "warning" |
buildifier.version | string | Use this version of Buildifier https://www.pantsbuild.org/v2.32/docs/reference-buildifier#version default: "8.0.3" |
changed | object | Tell Pants to detect what files and targets have changed from Git. See https://www.pantsbuild.org/2.32/docs/using-pants/advanced-target-selection. |
changed.dependents | enum | Include direct or transitive dependents of changed targets https://www.pantsbuild.org/v2.32/docs/reference-changed#dependents default: "none"one of: "none", "direct", "transitive" |
changed.diffspec | string | Calculate changes contained within a given Git spec (commit range/SHA/ref) https://www.pantsbuild.org/v2.32/docs/reference-changed#diffspec default: null |
changed.since | string | Calculate changes since this Git spec (commit range/SHA/ref) https://www.pantsbuild.org/v2.32/docs/reference-changed#since default: null |
check | object | Run type checking or the lightest variant of compilation available for a language. |
check.force | boolean | Force checks to run, even if they could be satisfied from cache https://www.pantsbuild.org/v2.32/docs/reference-check#force default: false |
check.only | array | Only run these checkers and skip all others https://www.pantsbuild.org/v2.32/docs/reference-check#only default: [] |
check-default-tools | object | Options for checking that external tool default locations are correctly typed. |
cli | object | Options for configuring CLI behavior, such as command line aliases. |
cli.alias | object | Register command line aliases https://www.pantsbuild.org/v2.32/docs/reference-cli#alias default: {} |
complete | object | Generates a completion script for the specified shell. The script is printed to stdout. For example, `pants complete --shell=zsh > pants-completions.zsh` will generate a zsh completion script and write it to the file |
complete.shell | enum | Which shell completion type should be printed to stdout https://www.pantsbuild.org/v2.32/docs/reference-complete#shell default: "bash"one of: "bash", "zsh" |
count-loc | object | Count lines of code. |
coursier | object | A dependency resolver for the Maven ecosystem. (https://get-coursier.io/) |
coursier.jvm_index | string | The JVM index to be used by Coursier https://www.pantsbuild.org/v2.32/docs/reference-coursier#jvm_index default: "" |
coursier.known_versions | array | Known versions to verify downloads against https://www.pantsbuild.org/v2.32/docs/reference-coursier#known_versions default: ["v2.1.24|linux_arm64 |96b4c7580d253b6999a40e94413ca6c4a9bd2… |
coursier.repos | array | Maven style repositories to resolve artifacts from https://www.pantsbuild.org/v2.32/docs/reference-coursier#repos default: ["https://maven-central.storage-download.googleapis.com/mave… |
coursier.url_platform_mapping | object | A dictionary mapping platforms to strings to be used when generating the URL to download the tool https://www.pantsbuild.org/v2.32/docs/reference-coursier#url_platform_mapping default: {"linux_arm64": "aarch64-pc-linux", "linux_x86_64"… |
coursier.url_template | string | URL to download the tool, either as a single binary file or a compressed file (e.g. zip file) https://www.pantsbuild.org/v2.32/docs/reference-coursier#url_template default: "https://github.com/coursier/coursier/releases/download/{ver… |
coursier.use_unsupported_version | enum | What action to take in case the requested version of coursier is not supported https://www.pantsbuild.org/v2.32/docs/reference-coursier#use_unsupported_version default: "error"one of: "error", "warning" |
coursier.version | string | Use this version of coursier https://www.pantsbuild.org/v2.32/docs/reference-coursier#version default: "v2.1.24" |
coverage-py | object | Configuration for Python test coverage measurement. This version of Pants uses `coverage` version 7.10.7 by default. Use a dedicated lockfile and the `install_from_resolve` option to control this. |
coverage-py.config | any | Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/latest/config.html) https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#config default: null |
coverage-py.config_discovery | boolean | If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`) https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#config_discovery default: true |
coverage-py.console_script | string | The console script for the tool https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#console_script default: "coverage" |
coverage-py.entry_point | string | The entry point for the tool https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#entry_point default: null |
coverage-py.fail_under | number | Fail if the total combined coverage percentage for all tests is less than this number https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#fail_under default: null |
coverage-py.filter | array | A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']` https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#filter default: [] |
coverage-py.global_report | boolean | If true, Pants will generate a global coverage report https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#global_report default: false |
coverage-py.install_from_resolve | string | If specified, install the tool using the lockfile for this named resolve https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#install_from_resolve default: null |
coverage-py.interpreter_constraints | array | Python interpreter constraints for this tool https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#interpreter_constraints default: ["CPython>=3.9,<3.15"] |
coverage-py.output_dir | string | Path to write the Pytest Coverage report to https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#output_dir default: "{distdir}/coverage/python" |
coverage-py.report | enum | Which coverage report type(s) to emit https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#report default: ["console"]one of: "console", "xml", "html", "raw", "json", "lcov" |
coverage-py.requirements | array | If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile https://www.pantsbuild.org/v2.32/docs/reference-coverage-py#requirements default: [] |
debug-adapter | object | Options used to configure and launch a Debug Adapter server. See https://microsoft.github.io/debug-adapter-protocol/ for more information. |
debug-adapter.host | string | The hostname to use when launching the server https://www.pantsbuild.org/v2.32/docs/reference-debug-adapter#host default: "127.0.0.1" |
debug-adapter.port | number | The port to use when launching the server https://www.pantsbuild.org/v2.32/docs/reference-debug-adapter#port default: 5678 |
debugpy | object | An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy). This version of Pants uses `debugpy` version 1.6.7.post1 by default. Use a dedicated lockfile and the `install_from_resolve` option to |
debugpy.args | array | Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'` https://www.pantsbuild.org/v2.32/docs/reference-debugpy#args default: [] |
debugpy.console_script | string | The console script for the tool https://www.pantsbuild.org/v2.32/docs/reference-debugpy#console_script default: null |
debugpy.entry_point | string | The entry point for the tool https://www.pantsbuild.org/v2.32/docs/reference-debugpy#entry_point default: "debugpy" |
debugpy.install_from_resolve | string | If specified, install the tool using the lockfile for this named resolve https://www.pantsbuild.org/v2.32/docs/reference-debugpy#install_from_resolve default: null |
debugpy.interpreter_constraints | array | Python interpreter constraints for this tool https://www.pantsbuild.org/v2.32/docs/reference-debugpy#interpreter_constraints default: ["CPython>=3.9,<3.15"] |
debugpy.requirements | array | If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile https://www.pantsbuild.org/v2.32/docs/reference-debugpy#requirements default: [] |
dependencies | object | List the dependencies of the input files/targets. |
dependencies.closed | boolean | Include the input targets in the output, along with the dependencies https://www.pantsbuild.org/v2.32/docs/reference-dependencies#closed default: false |
dependencies.format | enum | Output format for listing dependencies https://www.pantsbuild.org/v2.32/docs/reference-dependencies#format default: "text"one of: "text", "json" |
dependencies.output_file | string | Output the goal's stdout to this file https://www.pantsbuild.org/v2.32/docs/reference-dependencies#output_file default: null |
dependencies.sep | string | String to use to separate lines in line-oriented output https://www.pantsbuild.org/v2.32/docs/reference-dependencies#sep default: "\\n" |
dependencies.transitive | boolean | List all transitive dependencies https://www.pantsbuild.org/v2.32/docs/reference-dependencies#transitive default: false |
dependents | object | List all targets that depend on any of the input files/targets. |
dependents.closed | boolean | Include the input targets in the output, along with the dependents https://www.pantsbuild.org/v2.32/docs/reference-dependents#closed default: false |
dependents.format | enum | Output format for listing dependents https://www.pantsbuild.org/v2.32/docs/reference-dependents#format default: "text"one of: "text", "json" |
dependents.output_file | string | Output the goal's stdout to this file https://www.pantsbuild.org/v2.32/docs/reference-dependents#output_file default: null |
dependents.sep | string | String to use to separate lines in line-oriented output https://www.pantsbuild.org/v2.32/docs/reference-dependents#sep default: "\\n" |
dependents.transitive | boolean | List all transitive dependents https://www.pantsbuild.org/v2.32/docs/reference-dependents#transitive default: false |
docformatter | object | The Python docformatter tool (https://github.com/myint/docformatter). This version of Pants uses `docformatter` version 1.4 by default. Use a dedicated lockfile and the `install_from_resolve` option to control this. |
docformatter.args | array | Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'` https://www.pantsbuild.org/v2.32/docs/reference-docformatter#args default: [] |
docformatter.console_script | string | The console script for the tool https://www.pantsbuild.org/v2.32/docs/reference-docformatter#console_script default: "docformatter" |
docformatter.entry_point | string | The entry point for the tool https://www.pantsbuild.org/v2.32/docs/reference-docformatter#entry_point default: null |
docformatter.install_from_resolve | string | If specified, install the tool using the lockfile for this named resolve https://www.pantsbuild.org/v2.32/docs/reference-docformatter#install_from_resolve default: null |
docformatter.interpreter_constraints | array | Python interpreter constraints for this tool https://www.pantsbuild.org/v2.32/docs/reference-docformatter#interpreter_constraints default: ["CPython>=3.9,<3.15"] |
docformatter.requirements | array | If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile https://www.pantsbuild.org/v2.32/docs/reference-docformatter#requirements default: [] |
docformatter.skip | boolean | If true, don't use docformatter when running `pants fmt` and `pants lint` https://www.pantsbuild.org/v2.32/docs/reference-docformatter#skip default: false |
docker | object | Options for interacting with Docker. |
docker.build_args | array | Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations https://www.pantsbuild.org/v2.32/docs/reference-docker#build_args default: [] |
docker.build_hosts | object | Hosts entries to be added to the `/etc/hosts` file in all built images https://www.pantsbuild.org/v2.32/docs/reference-docker#build_hosts default: {} |
docker.build_no_cache | boolean | Do not use the Docker cache when building images https://www.pantsbuild.org/v2.32/docs/reference-docker#build_no_cache default: false |
docker.build_target_stage | string | Global default value for `target_stage` on `docker_image` targets, overriding the field value on the targets, if there is a matching stage in the `Dockerfile` https://www.pantsbuild.org/v2.32/docs/reference-docker#build_target_stage default: null |
docker.build_verbose | boolean | Whether to log the Docker output to the console https://www.pantsbuild.org/v2.32/docs/reference-docker#build_verbose default: false |
docker.default_context_root | any | Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field https://www.pantsbuild.org/v2.32/docs/reference-docker#default_context_root default: "" |
docker.default_repository | string | Configure the default repository name used in the Docker image tag https://www.pantsbuild.org/v2.32/docs/reference-docker#default_repository default: "{name}" |
docker.env_vars | array | Environment variables to set for `docker` invocations https://www.pantsbuild.org/v2.32/docs/reference-docker#env_vars default: [] |
docker.executable_search_paths | array | The PATH value that will be used to find the Docker client and any tools required https://www.pantsbuild.org/v2.32/docs/reference-docker#executable_search_paths default: ["<PATH>"] |
docker.optional_tools | array | List any additional executables which are not mandatory for Docker to work, but which should be included if available https://www.pantsbuild.org/v2.32/docs/reference-docker#optional_tools default: [] |
docker.publish_noninteractively | boolean | If true, publish images non-interactively https://www.pantsbuild.org/v2.32/docs/reference-docker#publish_noninteractively default: false |
docker.push_on_package | enum | The behavior when a docker_image target would push to a registry during packaging (e.g., when output has push=true or type=registry) https://www.pantsbuild.org/v2.32/docs/reference-docker#push_on_package default: "warn"one of: "allow", "ignore", "warn", "error" |
docker.registries | oneOf | Configure Docker registries https://www.pantsbuild.org/v2.32/docs/reference-docker#registries default: {} |
docker.run_args | array | Additional arguments to use for `docker run` invocations https://www.pantsbuild.org/v2.32/docs/reference-docker#run_args default: [] |
docker.suggest_renames | boolean | When true and, the `docker_image` build fails, enrich the logs with suggestions for renaming source file COPY instructions where possible https://www.pantsbuild.org/v2.32/docs/reference-docker#suggest_renames default: true |
docker.tailor | boolean | If true, add `docker_image` targets with the `tailor` goal https://www.pantsbuild.org/v2.32/docs/reference-docker#tailor default: true |
docker.tools | array | List any additional executable tools required for Docker to work https://www.pantsbuild.org/v2.32/docs/reference-docker#tools default: [] |
docker.use_buildx | boolean | Use [buildx](https://github.com/docker/buildx#buildx) (and BuildKit) for builds https://www.pantsbuild.org/v2.32/docs/reference-docker#use_buildx default: false |
dockerfile-parser | object | Used to parse Dockerfile build specs to infer their dependencies. This version of Pants uses `dockerfile` version 3.4.0 by default. Use a dedicated lockfile and the `install_from_resolve` option to control this. |
dockerfile-parser.install_from_resolve | string | If specified, install the tool using the lockfile for this named resolve https://www.pantsbuild.org/v2.32/docs/reference-dockerfile-parser#install_from_resolve default: null |
dockerfile-parser.interpreter_constraints | array | Python interpreter constraints for this tool https://www.pantsbuild.org/v2.32/docs/reference-dockerfile-parser#interpreter_constraints default: ["CPython>=3.9,<3.15"] |
dockerfile-parser.requirements | array | If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile https://www.pantsbuild.org/v2.32/docs/reference-dockerfile-parser#requirements default: [] |
dockerfile-parser.use_rust_parser | boolean | Use the new Rust-based, multithreaded, in-process dependency parser https://www.pantsbuild.org/v2.32/docs/reference-dockerfile-parser#use_rust_parser default: true |
environments-preview | object | A highly experimental subsystem to allow setting environment variables and executable search paths for different environments, e.g. macOS vs. Linux. |
environments-preview.names | object | A mapping of logical names to addresses to environment targets https://www.pantsbuild.org/v2.32/docs/reference-environments-preview#names default: {} |
experimental-deploy | object | Perform a deployment process. |
experimental-deploy.dry_run | boolean | If true, perform a dry run without deploying anything https://www.pantsbuild.org/v2.32/docs/reference-experimental-deploy#dry_run default: false |
experimental-deploy.publish_dependencies | boolean | If false, don't publish target dependencies before deploying the target https://www.pantsbuild.org/v2.32/docs/reference-experimental-deploy#publish_dependencies default: true |
experimental-explorer | object | Run the Pants Explorer Web UI server. |
experimental-explorer.address | string | Server address to bind to https://www.pantsbuild.org/v2.32/docs/reference-experimental-explorer#address default: "localhost" |
experimental-explorer.port | number | Server port to bind to https://www.pantsbuild.org/v2.32/docs/reference-experimental-explorer#port default: 8000 |
export | object | Export Pants data for use in other tools, such as IDEs. :::caution Exporting tools requires creating a custom lockfile for them Follow [the instructions for creating tool lockfiles](../../docs/python/overview/lockfiles#lockfiles-for-tools) |
export.bin | array | Export the specified binaries https://www.pantsbuild.org/v2.32/docs/reference-export#bin default: [] |
export.py_editable_in_resolve | array | When exporting a mutable virtualenv for a resolve, do PEP-660 editable installs of all `python_distribution` targets that own code in the exported resolve https://www.pantsbuild.org/v2.32/docs/reference-export#py_editable_in_resolve default: [] |
export.py_generated_sources_in_resolve | array | When exporting a mutable virtualenv for a resolve listed in this option, generate sources which result from code generation (for example, the `protobuf_sources` and `thrift_sources` target types) into the mutable virtualenv exported for default: [] |
export.py_non_hermetic_scripts_in_resolve | array | When exporting a mutable virtualenv for a resolve listed in this option, by default console script shebang lines will be made "hermetic" https://www.pantsbuild.org/v2.32/docs/reference-export#py_non_hermetic_scripts_in_resolve default: [] |
export.py_resolve_format | enum | Export Python resolves using this format https://www.pantsbuild.org/v2.32/docs/reference-export#py_resolve_format default: "mutable_virtualenv"one of: "mutable_virtualen…, "symlinked_immutab… |
export.resolve | array | Export the specified resolve(s) https://www.pantsbuild.org/v2.32/docs/reference-export#resolve default: [] |
export-codegen | object | Write generated files to `dist/codegen` for use outside of Pants. |
filedeps | object | List all source and BUILD files a target depends on. |
filedeps.absolute | boolean | If True, output with absolute path https://www.pantsbuild.org/v2.32/docs/reference-filedeps#absolute default: false |
filedeps.globs | boolean | Instead of outputting filenames, output the original globs used in the BUILD file https://www.pantsbuild.org/v2.32/docs/reference-filedeps#globs default: false |
filedeps.output_file | string | Output the goal's stdout to this file https://www.pantsbuild.org/v2.32/docs/reference-filedeps#output_file default: null |
filedeps.sep | string | String to use to separate lines in line-oriented output https://www.pantsbuild.org/v2.32/docs/reference-filedeps#sep default: "\\n" |
filedeps.transitive | boolean | If True, list files from all dependencies, including transitive dependencies https://www.pantsbuild.org/v2.32/docs/reference-filedeps#transitive default: false |
filter | object | Filter the input targets based on various criteria. Most of the filtering options below are comma-separated lists of filtering criteria, with an implied logical OR between them, so that a target passes the filter if it matches any of the |
filter.address_regex | array | Filter targets based on each target's address matching the provided regular expressions https://www.pantsbuild.org/v2.32/docs/reference-filter#address_regex default: [] |
filter.granularity | enum | Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets https://www.pantsbuild.org/v2.32/docs/reference-filter#granularity default: "all"one of: "all", "file", "BUILD" |
filter.output_file | string | Output the goal's stdout to this file https://www.pantsbuild.org/v2.32/docs/reference-filter#output_file default: null |
filter.sep | string | String to use to separate lines in line-oriented output https://www.pantsbuild.org/v2.32/docs/reference-filter#sep default: "\\n" |
filter.tag_regex | array | Filter targets based on whether any of each target's tags (in the target's `tags` field) matches the provided regular expressions https://www.pantsbuild.org/v2.32/docs/reference-filter#tag_regex default: [] |
Audit
What we found in this schema
- Declared draft: draft-07
- Validates cleanly against its own meta-schema.
- 771 properties, 100% carrying a description, max nesting depth 7.
Standards
Specification sections for the keywords in this schema
| Keyword | Document | Section |
|---|---|---|
default | JSON Schema Validation, draft 2020-12 | §9.2 — "default" |
description | JSON Schema Validation, draft 2020-12 | §9.1 — "title" and "description" |
enum | JSON Schema Validation, draft 2020-12 | §6.1.2 — "enum" |
format | JSON Schema Validation, draft 2020-12 | §7 — Vocabularies for Semantic Content With "format" |
oneOf | JSON Schema Core, draft 2020-12 | §10.2.1.3 — "oneOf" |
properties | JSON Schema Core, draft 2020-12 | §10.3.2.1 — "properties" |
type | JSON Schema Validation, draft 2020-12 | §6.1.1 — "type" |
Documents
- JSON Schema Core, draft 2020-12 — JSON Schema: A Media Type for Describing JSON Documents, A. Wright, H. Andrews, B. Hutton, G. Dennis, Eds., 2022. draft-bhutton-json-schema-01. An expired Internet-Draft with no formal standing in the IETF standards process; it is nonetheless the specification of record for JSON Schema 2020-12, published by json-schema.org.
- JSON Schema Validation, draft 2020-12 — JSON Schema Validation: A Vocabulary for Structural Validation of JSON, A. Wright, H. Andrews, B. Hutton, Eds., 2022.
- RFC 8259 (STD 90) — The JavaScript Object Notation (JSON) Data Interchange Format, T. Bray, Ed., 2017. The format a schema describes.
- RFC 6901 — JavaScript Object Notation (JSON) Pointer. Defines the pointer syntax used by $ref fragments and the ~0 / ~1 escapes.
Source
Attribution
This schema comes from SchemaStore, distributed under the Apache License 2.0. Copyright 2015–present Mads Kristensen and contributors. View the original file. The field table and audit on this page are generated by JSONTools.tools; the schema itself is unmodified.